Python에서 목록 작업을 할 때 연속된 요소 쌍을 반복해야 할 수도 있습니다. 전통적인 접근 방식에서는 아래 예와 같이 for 루프를 사용하여 요소의 인덱스를 반복하는 작업이 포함됩니다.
l = [1, 7, 3, 5] for i in range(len(l) - 1): x = l[i] y = l[i + 1] # do something
이 접근 방식은 효과적이기는 하지만 큰 목록을 처리할 때 지루할 수 있습니다. 다음은 Python의 내장 반복자를 사용하는 보다 간결한 솔루션입니다.
zip 함수를 사용하면 두 개 이상의 반복 가능 항목의 요소를 쌍으로 연결할 수 있습니다. 목록 l의 연속 요소 쌍을 반복하려면 l[1:]:
for first, second in zip(l, l[1:]): # do something
을 사용하여 자체의 이동된 버전과 쌍을 이룰 수 있습니다. 이 솔루션은 간결하고 효율적이므로 다음과 같은 경우에 이상적입니다. 목록 쌍 처리.
Python 2에서는 itertools 모듈의 izip 함수를 사용하는 것이 큰 목록의 경우 메모리 효율성이 더 높을 수 있습니다. zip과 달리 중간 목록 생성을 피하면서 느리게 쌍을 생성합니다.
import itertools for first, second in itertools.izip(l, l[1:]): # do something
이 솔루션은 효율적인 메모리 사용을 보장하는 동시에 Python 3의 zip 함수와 동일한 기능을 제공합니다.
위 내용은 Python 목록에서 연속적인 요소 쌍을 반복하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!