순열 / 조합
arr = ['A', 'B', 'C']
from itertools import permutations
permutations(arr, 2)
=> [('A', 'B'), ('A', 'C'), ('B', 'A'), ('B', 'C'), ('C', 'A'), ('C', 'B')]
from itertools import combinations
combinations(arr, 2)
=> [('A', 'B'), ('A', 'C'), ('B', 'C')]
from itertools import product
product(arr, repeat=2)
=> [('a', 'a'), ('a', 'b'), ('a', 'c'), ('b', 'a'), ('b', 'b'), ('b', 'c'), ('c', 'a'), ('c', 'b'), ('c', 'c')]
사전
from collections import Counter
arr = ['a', 'b', 'f', 'a', 'c', 'a', 'b']
arr_dict = Counter(arr)
→ {"a":3,"b":2,"f":1,"c":1}
정렬에 조건 추가
sorted(arr, key = lambda x : x[1])
sorted(arr, key = lambda x : (x[1], x[2]))
sorted(arr, key = lambda x : -x[1])
lambda
list(map(lambda x : x**2, [1, 2, 3]))
→ [1, 4, 9]
list(map(lambda x,y : x*y, [1, 2, 3], [4, 5, 6]))
→ [4, 10, 18]
list(filter(lambda x : x<3, [1, 2, 4, 5]))
→ [1, 2]
리스트 → 붙여서 문자로 출력
LIST = ['a', 'cdf', 'xyzk']
print(''.join(LIST))
→ 'acdfxyzk'
리스트 특정 원소 개수
파이썬 리스트의 특정 요소 개수 구하기 → count()사용
i = [1,1,3,4,5,3,3,7,6,8,9,3,2,5,9]
print(i.count(3))
>>> 4