기본 패턴
python
from itertools import chain, combinations
merged = list(chain([1, 2], [3, 4]))
pairs = list(combinations(["a", "b", "c"], 2))설명
itertools는 반복 처리와 조합 계산을 위한 표준 라이브러리 도구 모음입니다.- 여러 iterable을 이어 붙이거나, 조합을 만들거나, 누적값을 계산하는 작업을 효율적으로 표현할 수 있습니다.
- 반복문으로 직접 구현할 수 있는 로직도
itertools를 쓰면 의도가 더 분명해지는 경우가 많습니다. - 특히 큰 데이터를 한 번에 만들지 않고 순차적으로 처리하는 흐름과 잘 어울립니다.
짧은 예제
python
from itertools import chain
for value in chain(range(3), range(3, 5)):
print(value)빠른 정리
| 도구 | 역할 |
|---|---|
chain | 여러 iterable 연결 |
combinations | 조합 생성 |
product | 카테시안 곱 |
| iterator 기반 | 순차 처리와 메모리 절약에 유리 |
공식 참고: itertools — Functions creating iterators for efficient looping
주의할 점
itertools는 강력하지만 처음 보면 추상적으로 느껴질 수 있습니다. "무엇을 반복문으로
직접 쓰고 있었는가"를 떠올리면서 대응시켜 읽으면 더 빨리 익힐 수 있습니다.