Python 생성기 개체 재사용:
Python의 강력한 기능인 생성기는 요청 시 느리게 계산되는 값 시퀀스입니다. 그러나 발전기의 특성상 되감을 수는 없습니다. 생성기를 여러 번 재사용하려는 경우 다음과 같은 몇 가지 옵션이 있습니다.
1. 생성기 기능 다시 시작:
생성 프로세스를 다시 시작하려면 생성기 기능을 다시 실행하면 됩니다.
<code class="python">y = FunctionWithYield() for x in y: print(x) y = FunctionWithYield() for x in y: print(x)</code>
2. 생성기 결과 저장:
또는 생성기 결과를 디스크의 목록이나 파일과 같은 메모리 유지 데이터 구조에 저장할 수 있습니다. 이를 통해 결과를 여러 번 반복할 수 있습니다.
<code class="python">y = list(FunctionWithYield()) for x in y: print(x) # Can iterate again: for x in y: print(x)</code>
장점:
이러한 옵션 중 선택은 특정 요구 사항에 따라 다릅니다.
본질적으로 메모리 사용량과 처리 시간 사이의 전형적인 상충 관계에 직면하게 됩니다. 둘 중 하나를 손상시키지 않고 발전기를 "되감기"하는 완벽한 솔루션은 없습니다.
위 내용은 Python 생성기를 여러 번 재사용하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!