Python
[파이썬 문법 체크] collections 모듈
winter126
2025. 1. 31. 01:41
Python의 collections 모듈은 다양한 형태의 컨테이너를 제공하여 데이터 조작을 쉽고 효율적으로 할 수 있다.
1. deque
deque는 양쪽 끝에서 요소를 추가하거나 제거할 수 있는 스레드-안전한 양방향 큐이다.
from collections import deque
d = deque()
d.append('a') # 오른쪽 끝에 추가
d.appendleft('b') # 왼쪽 끝에 추가
d.pop() # 오른쪽 끝 요소 제거
d.popleft() # 왼쪽 끝 요소 제거
d = deque()
d = ['a', 'b', 'c']
d.rotate(1) # ['c', 'a', 'b'] 한번 더 쓰면 b가 앞에온다. 알고리즘에서 자주 사용된다.
2. Counter
Counter는 요소의 개수를 세는데 사용되는 컬렉션이다.
from collections import Counter
c = Counter('hello world')
print(c) # 출력: Counter({'l': 3, 'o': 2, 'h': 1, 'e': 1, ' ': 1, 'w': 1, 'r': 1, 'd': 1})
3. namedtuple
namedtuple은 이름이 지정된 필드를 가지는 튜플이다.
from collections import namedtuple
Point = namedtuple('Point', ['x', 'y'])
p = Point(1, 2)
print(p.x, p.y) # 출력: 1 2
위의 컬렉션들은 Python의 표준 라이브러리인 collections 모듈에서 가져올 수 있다.
각각의 데이터 구조는 특정한 상황에서 유용하게 사용될 수 있다.