Als «generator» getaggte Fragen

Ein Generator ist eine Verallgemeinerung einer Unterroutine, die hauptsächlich verwendet wird, um das Schreiben von Iteratoren zu vereinfachen. Die Yield-Anweisung in einem Generator gibt keine Coroutine an, zu der gesprungen werden soll, sondern gibt einen Wert an eine übergeordnete Routine zurück.

290
Faule Methode zum Lesen großer Dateien in Python?

Ich habe eine sehr große Datei mit 4 GB und wenn ich versuche, sie zu lesen, hängt mein Computer. Also möchte ich es Stück für Stück lesen und nach der Verarbeitung jedes Stücks das verarbeitete Stück in einer anderen Datei speichern und das nächste Stück lesen. Gibt es eine Methode für yielddiese...

232
Was bedeutet Ausbeute in PHP?

Ich bin kürzlich über diesen Code gestolpert: function xrange($min, $max) { for ($i = $min; $i <= $max; $i++) { yield $i; } } Ich habe dieses yieldSchlüsselwort noch nie gesehen . Ich versuche den Code auszuführen, den ich bekomme Analysefehler: Syntaxfehler, unerwartetes T_VARIABLE in...

218
Generatoren in Python verstehen

Ich lese gerade das Python-Kochbuch und suche derzeit nach Generatoren. Es fällt mir schwer, meinen Kopf herumzukriegen. Gibt es ein Java-Äquivalent, da ich einen Java-Hintergrund habe? Das Buch sprach über "Produzent / Konsument", aber wenn ich höre, dass ich an Threading denke. Was ist ein...

187
Wie verbinde ich zwei Generatoren in Python?

Ich möchte den folgenden Code ändern for directory, dirs, files in os.walk(directory_1): do_something() for directory, dirs, files in os.walk(directory_2): do_something() zu diesem Code: for directory, dirs, files in os.walk(directory_1) + os.walk(directory_2): do_something() Ich bekomme den...

153
Generatorobjekt in Python zurücksetzen

Ich habe ein Generatorobjekt, das mit mehreren Erträgen zurückgegeben wird. Die Vorbereitung zum Aufrufen dieses Generators ist ziemlich zeitaufwändig. Deshalb möchte ich den Generator mehrmals wiederverwenden. y = FunctionWithYield() for x in y: print(x) #here must be something to reset 'y' for x...