Python을 사용하여 청크별로 반복자 반복
특정 크기의 청크로 반복자를 반복하는 것은 Python에서 일반적인 작업입니다. 이를 달성하려면 다음 접근 방식을 사용하는 것이 좋습니다.
itertools.grouper() 함수 사용:
itertools.grouper() 함수는 그룹화를 위한 다양한 방법을 제공합니다. 청크로 반복 가능합니다. 그러나 불완전한 최종 청크를 수용하려면 추가 처리가 필요하며, 이는 불완전한 매개변수로 달성할 수 있습니다.
from itertools import grouper it = iter([1, 2, 3, 4, 5, 6, 7]) chunk_size = 3 chunks = list(grouper(it, chunk_size, incomplete='ignore')) print(chunks) # [[1, 2, 3], [4, 5, 6], [7]]
itertools.batched() 함수 사용(Python 3.12 ):
Python 3.12에는 itertools.batched() 함수가 명시적으로 도입되었습니다. 청킹을 처리하고 원래 시퀀스 유형을 유지합니다.
from itertools import batched it = [1, 2, 3, 4, 5, 6, 7] chunk_size = 3 chunks = list(batched(it, chunk_size)) print(chunks) # [[1, 2, 3], [4, 5, 6], [7]]
시퀀스 반복자를 위한 대체 솔루션:
시퀀스의 경우 덜 일반적이지만 편리한 솔루션은 목록 슬라이싱을 사용하는 것입니다. 청크 크기와 동일한 단계 크기를 사용합니다.
it = [1, 2, 3, 4, 5, 6, 7] chunk_size = 3 chunks = [it[i:i + chunk_size] for i in range(0, len(it), chunk_size)] print(chunks) # [[1, 2, 3], [4, 5, 6], [7]]
이러한 방법은 다음을 수행하는 효율적인 방법을 제공합니다. 반복자를 청크로 반복하여 불완전한 최종 청크를 유연하게 처리하고 필요한 경우 원래 시퀀스 유형을 보존할 수 있습니다.
위 내용은 Python을 사용하여 청크의 반복자를 통해 어떻게 반복할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!