Ein Generatorobjekt in Python zurücksetzen: Alternativen erkunden
Generatoren bieten eine effiziente Möglichkeit, eine Folge von Werten zu durchlaufen, ohne eine Liste zu erstellen Erinnerung. Sobald ein Generator jedoch alle seine Werte abgegeben hat, ist er erschöpft und kann nicht direkt wiederverwendet werden. Dies wirft die Frage auf, wie man ein Generatorobjekt in Python zurücksetzt.
Leider verfügen Generatoren nicht über eine integrierte Reset-Methode. Um einen Generator wiederzuverwenden, haben Sie mehrere Möglichkeiten:
Beachten Sie den folgenden Codeauszug für jede Option:
Option 1 (Generatorfunktion erneut ausführen):
<code class="python">y = FunctionWithYield() for x in y: print(x) y = FunctionWithYield() for x in y: print(x)</code>
Option 2 (Generatorergebnisse in einer Liste speichern):
<code class="python">y = list(FunctionWithYield()) for x in y: print(x) # Can iterate again: for x in y: print(x)</code>
Die Auswahl Die Wahl zwischen diesen Optionen hängt von den spezifischen Anforderungen Ihres Programms ab. Option 1 ist für kleine Generatoren effizienter oder wenn die erneute Ausführung der Generatorfunktion nicht rechenintensiv ist. Option 2 eignet sich besser für große Generatoren, bei denen das Speichern der Ergebnisse im Speicher möglich ist.
Das obige ist der detaillierte Inhalt vonWie setze ich ein Generatorobjekt in Python zurück?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!