hyei-devlog

[파이썬 문법 체크] collections 모듈 본문

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 모듈에서 가져올 수 있다.
각각의 데이터 구조는 특정한 상황에서 유용하게 사용될 수 있다.