겹치는 쌍을 반복하는 슬라이딩 윈도우 기술
Python에서 목록으로 작업할 때 요소의 겹치는 쌍을 반복해야 하는 경우가 많습니다. . 일반적인 접근 방식은 zip 및 zip[1:]을 사용하여 목록에서 독립적으로 진행되는 두 개의 반복자를 만드는 것입니다. 그러나 동일한 결과를 얻는 더 효율적이거나 관용적인 방법이 있을 수 있습니다.
Itertools 쌍별 함수
Python 3.8에는 itertools 모듈의 쌍별 함수가 도입되었습니다. 이 함수는 반복 가능 항목을 취하고 요소의 겹치는 쌍을 생성하는 반복자를 반환합니다.
Python 3.8 이하 버전의 경우 tee를 사용하여 비슷한 함수를 구현할 수 있습니다.
def pairwise(iterable): "s -> (s0, s1), (s1, s2), (s2, s3), ..." a, b = itertools.tee(iterable) next(b, None) return zip(a, b)
이점 pairwise
pairwise 기능은 기존 zip에 비해 몇 가지 장점이 있습니다. 접근 방식:
결론
기존 zip 접근 방식은 기능적이지만 쌍별 기능은 중복되는 요소 쌍을 반복하는 보다 효율적이고 관용적인 방법을 제공합니다. 파이썬. 처리 또는 분석을 위해 데이터의 슬라이딩 창을 생성하는 데 특히 유용합니다.
위 내용은 Python 목록에서 겹치는 쌍을 효율적으로 반복하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!