Python에서는 동일한 반복 요소가 포함된 여러 목록을 다양한 방법으로 생성할 수 있습니다. 이 토론에서는 목록 이해를 우회하는 방법을 탐구합니다.
해결책:
Python은 요소를 복제하기 위해 * 연산자를 제공합니다. n개의 요소 e로 채워진 목록을 생성하려면 [e] * n이라는 표현식을 사용하면 됩니다.
예:
e = 5 list_of_e = [e] * 10 # [5, 5, 5, 5, 5, 5, 5, 5, 5, 5]
참고:
e가 빈 목록인 경우 이 메소드는 동일한 빈 목록에 대한 n개의 참조가 있는 목록을 생성합니다. 독립적인 빈 목록을 제공하려면 다른 접근 방식이 필요합니다.
성능 평가:
itertools.repeat()가 처음에는 더 빠르게 나타날 수 있지만 비교를 수행하려면 목록으로 변환해야 합니다. . * 연산자는 목록을 직접 반환하므로 성능이 향상됩니다.
import timeit n = 1000000 timeit.timeit('[0] * 10', number=n) # Faster timeit.timeit('list(itertools.repeat(0, 10))', number=n) # Slower
결론:
목록 내포 없이 반복되는 요소의 목록을 만들려면 * 연산자를 활용하세요. , 간결하고 효율적인 솔루션을 제공합니다. 지연 요소 생성이 필요한 경우 itertools.repeat()를 고려하세요.
위 내용은 목록 이해 없이 Python에서 반복되는 요소가 있는 목록을 어떻게 효율적으로 만들 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!