
문자열변수명.replace(" ", "")
/와 //의 차이
/는 나눈 결과가 소수 형태로 나오고, //는 몫 연산으로 정수로 나옴.
내장 라이브러리 math의 ceil함수(천정함수)와 floor함수(바닥함수) 사용할 수 있음.
math.floor(num1/num2)
int( )를 쓰거나 round( )를 쓸 수도 있음.
근데 round()는 주의해야 함. ⚠️ round(n.5)는 가까운 짝수를 따라가기 때문임.
소숫점 자릿수 지정
e.g. round(수, 1) 소숫점 첫째자리까지 나타냄.
c = [ int(input()) for _ in range(N) ]
c안에 리스트를 넣을 거니까 위와 같이 [ ] 로 감싸야 함
아래와 같이 2차원 리스트를 만들 수도 있음.
arr = [list(map(int, input().split())) for _ in range(N)]
for-each 문으로 이차원 배열 원소 가져오기 예시
: for-each 문으로 1차원 배열 원소 하나씩 가져오는 거랑 똑같음.
arr = [[10, 30], [2, 8], [3, 12], [7, 35], [1, 5], [1, 7]]
for P, C in arr: # arr의 원소 하나씩 가져와서 P, C에 넣음
for _ in range(P):
piece.append(C // P)
반복문 while의 조건을 True, False로
# 가지고 있는 돈 K가 0이 될 때까지 조각을 계속 구매합니다.
while K:
K -= 1
result += piece.pop()
data_list = list(set(data_list))while K and arr:
# K 값이 0이 아니고, arr에 값이 있는 동안만 while문을 진행합니다.sort( ), sorted( ) 내장 함수는 파이썬에서 순회가 가능한(iterable) 객체를 인자로 받아 데이터를 정렬해줄 수 있음.
sorted( )함수는 sort된 리스트를 반환함.
리스트명.sort()
lst = sorted(list1)
sort( )와 reverse( ) 차이
sort( ) : 기준에 따라 오름차순 또는 내림차순 정렬을 하는 것.
내림차순 정렬은 sort(reverse=True).
reverse( )는 단순히 그 리스트의 순서를 뒤집는 것임.
list(reversed(리스트명)) # 거꾸로 뒤집은 리스트를 반환함.
⚠️ reversed(리스트)는 리스트를 반환하지 않고 대신 iterator(반복자)를 반환한다.
>>> nums = [1, 2, 3]
>>> reversed_nums = reversed(nums)
>>> type(reversed_nums)
<class 'list_reverseiterator'>
정렬 key를 사용하여 정렬의 우선순위 정하기 예시
arr.sort(key=lambda x : x[1] // x[0])
# 이차원 배열이 있을 때 각 원소의 x[1] // x[0]의 값이 작은 순서대로 원소를 정렬
data_list.sort(key=lambda x : len(x))
# x의 길이가 짧은 순서를 우선순위로 하여 정렬
list명.pop( ) # 리스트의 맨 마지막 원소(오른쪽) 리턴 후 삭제
removed_lst.append(list명.pop(i)) # 리스트의 i번째 원소 리턴 후 원래 있던 list에선 삭제
# 새로운 리스트에 대입
# list.pop(obj=list[-1]) : Removes and returns last object or obj from the list
P, C = arr.pop() # 2D 배열일 경우 원소의 값을 이렇게 가져올 수 있음