[문법] 문법 노트 (Python)
import string
string.ascii_lowercase
알파벳 a~z까지 나열
len()
길이
ord(str)
문자를 아스키 코드로 변환
' '.join(list)
list를 띄어쓰기로 엮어서 하나의 문자열로 변경해줌
a, b = map(int, input().split)
두 개의 정수를 입력받고 각각 저장해줌
list.append()
list에 값 추가 맨뒤에 추가됨
for _ in range(n)
n만큼 반복
bin()[2:]
숫자를 이진수로 변경해주고 앞에 0b라는 숫자가 붙기 때문에 [2:]를 이용해 앞에 2자리를 떼어내줌
for i in range(len(arr)):
print(arr[-i-1], end = ' ')
문자를 뒤집어서 출력해줌
from collections import deque
deque(range(1, n+1))
1부터 n까지 리스트를 만든 후 데크화 함
deque.rotate(-1)
가장 앞에 값을 가장 뒤로 이동
from sys import stdin
input = stdin.readline
반복문으로 여러줄 입력받는 상황에서는 반드시 sys.stdin.readline()을 사용해야 시간초과가 발생하지 않음
collections.defaultdict(list)
자동으로 빈 딕셔너리 생성 리스트에 key, value 값을 저장할 수 있음
sorted(str)
알파벳 순으로 정렬
str[::-1]
문자열을 거꾸로 뒤집어줌
max(a, b, c, key = len)
a,b,c 값을 key값을 이용해 가장 큰 길이인 값을 반환
num.sort()
숫자를 작은 수 부터 큰 수로 정렬해줌
collections.deque()
import 없이 deque를 사용 가능
for key, val in enumerate(list)
list에 있는 값의 갯수 만큼 key 값엔 인덱스 값 val 값에는 value가 들어감
from collections import Counter
Counter(str)
Counter 생성자에 문자열을 인자로 넘기면 각 문자가 문자열에서 몇 번씩 나타나는지를 알려주는 객체가 반환된다.
ex) Counter("hello") >>> Counter({'h' : 1, 'e' : 1, 'l' : 2, 'o' : 1})
collections.Counter(list).most_common(k)
리스트에 저장된 숫자 들 중 가장 많이 등장한 숫자들을 k개 저장한다.
set(map(int, input().split()))
set으로 입력 받는 이유는 고정값으로 이용할 때 탐색 시간을 줄이기 위해서이다.
print(1) if num in answer else print(0)
answer에 num이 존재한다면 1을 출력 아니라면 0을 출력
input().rstrip()
sys.stdin.readline을 사용할 때는 맨 끝의 개행문자까지 같이 입력받기 때문에 문자열을 저장하고 싶을 경우 .rstrip()을 추가로 해 주어야 한다.
import itertools
itertools.permutations(chars, n)
chars배열의 값들을 n개씩 묶어서 순열로 변환해준다.
ex) chars = ['A', 'B', 'C'] / n =2 >>> [('A', 'B'), ('A', 'C'), ('B', 'A'), ('B', 'C'), ('C', 'A'), ('C', 'B')]
import itertools
itertools.combinations(chars, 2)
chars배열의 값들을 n개씩 묶어서 조합으로 변환해준다.
ex) chars = ['A', 'B', 'C'] / n =2 >>> [('A', 'B'), ('A', 'C'), ('B', 'C')]
import heapq
힙을 사용할 수 있는 import이다. heapq 모델은 최소힙을 제공한다.
heapq.heappush(heap, n)
힙 불변성을 유지하면서 n값을 heap으로 push 해준다.
heapq.heappop(heap)
힙 불변성을 유지하면서, heap에서 가장 작은 항목을 pop하고 반환해준다.
heapq.heapify(list)
리스트를 heap으로 변경해준다.
heapq.nlargest(n, heap)
heap에 있는 값들중 가장 큰 값부터 n개를 반환한다.
heapq.nsmallest(n, heap)
heap에 있는 값들중 가장 작은 값부터 n개를 반환한다.
sorted(list, reverse=True)
list에 있는 값들을 정렬 후 뒤집어준다.