Notice
Recent Posts
Recent Comments
«   2024/10   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
10-11 00:15
Archives
Today
Total
관리 메뉴

Developer_Neo

파이썬 코테 쓰이는 문법 정리하기. 본문

카테고리 없음

파이썬 코테 쓰이는 문법 정리하기.

_Neo_ 2022. 8. 1. 16:02
반응형

입력받기

1. sys.stdin.readline() -> 이게 더 좋다.

import sys
data = sys.stdin.readline()

#-----------------------------------------------------------

data_list = list(map(int, sys.stdin.readline().split()))  # 여러개 공백을 기준으로 입력 받기

#------------------------------------------------------------

data_list = list(map(int, sys.stdin.readline().rstrip())) #공백없이 입력받아 list만들기
'''
 rstrip이 쓰이는 이유는 readline()은 한줄씩 읽어오는 것으로 마지막에 \n이 붙어있기 때문이다.

123465489       -> 이렇게 입력시
[1, 2, 3, 4, 6, 5, 4, 8, 9] -> 이렇게 data_list가 만들어진다.
'''

#------------------------------------------------------------
'''
map함수는 iterable 객체를 반환하는 함수들중 하나로 
list나 tuple등을 감싸주어야지만 리스트나 튜플로 변환이 가능하다
(range(), sorted, reversed(), enumerate(), map(), filter(), zip())

iterable 객체 - iterator 객체를 얻을 수 있는 반복 가능한 객체
'''

2. input

- prompt 메시지를 출력할 수 있으며 input의 결과값은 문자열이지만 마지막 개행 문자인 \n이 포함되지 않는다,

- sys.stdin.readline()은 마지막 개행 문자인 \n이  포함된다.

data = input("what is it? :")
'''
input으로 받은 값은 무조건 문자열이 된다
따라서 int를 원한다면 int로 감싸주어야한다.
'''

 

 

추가)

- 10번 Enter를 기준으로 입력받아 list에 저장

num=[int(sys.stdin.readline()) for _ in range(10)]

*

1. 곱셈, 거듭제곰

2. 리스트 확장

i_list=[1]*5  # -> [1,1,1,1,1]

t_tuple=(1,)*5  # -> (1,1,1,1,1)

3. Unpacking

data = [1,2,3,4,5]
print(*data) # 1 2 3 4 5

#튜플도 가능

*a, b = data # [1,2,3,4] , 5

4. *args, **kwargs

def args_function(*args):
    print(args)

def kwargs_function(**kwargs):
    print(kwargs)
    
args_function('a', 'b') # ('a', 'b')   *args는 튜플로 전달된것이라서..
kwargs_function(a = 100, b = 200) # {'a':100, 'b':200}  **kwargs는 사전으로 저장된다..?

 


+ 는 더하기

- 는 빼기

* 는 곱하기

/ 는 나누기

% 는 나머지

// 는 몫

** 는 거듭제곱

 


rjust, ljust, zfill

rjust(오른쪽 정렬)

val = "77".rjust(5)
print(val) # ___77

val = "77".rjust(5, "0")
print(val) # 00077

 

ljust(왼쪽 정렬)

val = "777".ljust(15, "0")
print(val) # 777000000000000

 

zfill(0을 왼쪽에 채워줌)

val = "777".zfill(5)
print(val) # 00777

 


list

1. 특정 값의 인덱스 찾기

num_list=[1,2,3,4,5,6,7]
print(num_list.index(3)) # 2

2. 리스트 끼리 순서 맞는지 확인

a=[1,2,3,4,5,6,7]
b=[1,2,3,4,5,6,7]
print(a==b)

 


길이

import sys

#숫자의 나머지를 저장할 집합
set_10=set()
#숫자 10개 입력받기
for _ in range(10):
    num=int(sys.stdin.readline())
    set_10.add(num%42)
print(len(set_10))#집합의 길이 출력

 

소수점 관리

1. round(반올림하고자 하는 값, 자릿수)

2. format 서식 지정으로 소수점 관리

present_list=[1,3,5,7,8]
print("{:.2f}".format(present_list[1])) # 3.00

 

문자열 각각을 숫자로 변경해 더하는 거

 i=123
 '''--------------------------------------------------'''
 sum=0
 for j in str(i):
     sum+=int(j)
 
  '''--------------------------------------------------'''
#밑의 것처럼 map을 이용해서 할 수 있다
 a = list(map(int, str(i)))
 sum(a)

 

2,8,10,16진수

num = input("값 입력:")
int(num, 16) # 16진수 값을 10진수로 변환
int(num, 10) # 10진수 값을 10진수
int(num,8) # 8진수 값을 10진수로 변환
int(num,2) # 2진수 값을 10진수로 변환

print("16 진수 ==>", hex(num)) # 10진수를 16진수로 변환

print("10 진수 ==>", (num))

print("8 진수 ==>", oct(num)) # 10진수를 8진수로 변환

print("2 진수 ==>", bin(num)) # 10진수를 2진수로 변환

 

 

Math 라이브러리

1. 팩토리얼이 있다!

from math import factorial
n, k = map(int, input().split())
b = factorial(n) // (factorial(k) * factorial(n - k))
print(b)

 

반응형
Comments