본문 바로가기
카테고리 없음

파이썬 itertools 사용법

by 퍼포먼스마케팅코더 2023. 8. 11.
반응형

itertools는 파이썬의 표준 라이브러리 중 하나로, 효과적인 순회를 위한 여러 가지 이터레이터 빌딩 블록을 제공합니다. 이 라이브러리는 순열, 조합, 카르테지안 곱과 같은 복잡한 이터레이션 구조를 쉽게 생성할 수 있게 해줍니다.

itertools에는 다음과 같은 몇 가지 주요 함수와 클래스가 포함되어 있습니다:

  1. count(start, step): start 값부터 step 간격으로 무한히 증가하는 이터레이터를 생성합니다.
  2. cycle(iterable): 주어진 이터러블을 무한히 순환하는 이터레이터를 생성합니다.
  3. repeat(object, times): 지정된 객체를 지정된 횟수만큼 반복하는 이터레이터를 생성합니다.
  4. permutations(iterable, r): 이터러블에서 길이 r의 모든 가능한 순열을 생성합니다.
  5. combinations(iterable, r): 이터러블에서 길이 r의 모든 가능한 조합을 생성합니다.
  6. product(*iterables, repeat=1): 입력 이터러블의 카르테지안 곱을 생성합니다.

이러한 함수들은 주로 루프와 같은 반복 작업을 보다 효율적이고 간결하게 작성할 때 유용하며, 복잡한 이터레이션 패턴을 쉽게 다룰 수 있게 해줍니다.

예시:

from itertools import permutations

# 문자열 'ABC'의 모든 가능한 2개 조합 순열을 생성
perm = permutations('ABC', 2)
for p in perm:
    print(p) # ('A', 'B'), ('A', 'C'), ('B', 'A'), ('B', 'C'), ('C', 'A'), ('C', 'B')

itertools는 데이터 분석, 알고리즘 구현 등 다양한 분야에서 유용하게 사용될 수 있으며, 코드의 가독성과 효율성을 높이는 데 도움이 됩니다.

반응형

댓글