Warum kann nicht Generatoren werden gebeizt?
Python ' s pickle (ich Rede hier von standard-Python 2.5/2.6/2.7 hier) nicht Gurke sperren, Datei-Objekte, etc.
Es auch keine Gurke Generatoren und lambda-Ausdrücke (oder irgendeiner anderen anonymen code), weil die Gurke wirklich nur speichert Namen Referenzen.
Im Fall der Schleusen-und Betriebssystem-abhängigen Funktionen, der Grund warum Sie nicht Gurke, Sie ist klar und macht Sinn.
Aber warum kann man nicht Gurke Generatoren?
Hinweis: nur zur Klarheit-ich bin interessiert in der fundamentale Grund (oder Annahmen und Entscheidungen, die ging in die design-Entscheidung) warum, nicht in"", weil es Ihnen eine Gurke-Fehler".
Merke ich, die Frage ist ein bisschen weit-trifft, so ist hier eine Faustregel, ob Ihr antwortete es: "Wenn diese Annahmen erhoben wurden, oder die Art der erlaubten generator irgendwie mehr eingeschränkt, würde Beizen Generatoren arbeiten wieder?"
Es ist nicht allzu schwer vorstellbar; Sie sind Durchlaufen, und Sie möchten, beenden Sie das Programm, und später fortsetzen, wo Sie aufgehört haben.
...oder fortsetzen, gleichzeitig aber von einem anderen Programm (=serialisieren ist auch bei der übertragung über das Netzwerk)
Ich glaube nicht, dass diese Frage geschlossen werden soll.
Ja, habe ich tatsächlich falsch verstanden, seine Frage auf den ersten, (wünschte, Sie könnte wieder eine enge Abstimmung) und ich bin die erste, die abgestimmt haben, wieder zu öffnen.
InformationsquelleAutor Radim | 2011-08-24
Du musst angemeldet sein, um einen Kommentar abzugeben.
Gibt es viele Informationen über diese zur Verfügung. Für die "offizielle Antwort" auf die Frage, Lesen Sie die (geschlossen) Python bugtracker-Problem.
Den Kern der Argumentation, durch eine von den Menschen, die die Entscheidung getroffen haben, detailliert auf dieser blog:
Und zwei vorgeschlagenen workarounds sind genannt:
Das Paket ist bereits metaoptimize.com/blog/2009/12/22/..., die hat auch noch einen anderen workaround Muster.
Wie kann man eine Antwort und Stimme "in der Nähe" in der gleichen Zeit? Jetzt bin ich neugierig warten auf den "Debatte, Argumente und erweiterte Diskussion" 🙂
Habe ich falsch verstanden, deine Frage auf den ersten, und Sie können nicht nehmen Sie wieder eine enge Abstimmung. Ich war auch die erste, die abgestimmt haben, wieder zu öffnen.
Kay, der Autor von "generator_tools", sagt Sie, es funktioniert gut, mit einigen Einschränkungen, die für Python 2.5. Leider, mit der Frage geschlossen ist, werden wir wohl nie hören Sie das gesamte Konto 🙁 Also ich bin der Annahme deine Antwort, aber meine Neugier ist nicht völlig zufrieden.
InformationsquelleAutor agf
Können Sie, abhängig von der Implementierung. PyPy und Stackless Python können diese (bis zu einem gewissen Grad jedenfalls):
In CPython es ist auch möglich, erstellen Sie ein iterator-Objekt zu simulieren aufsammelbare generator.
es beantwortet meine Frage.
InformationsquelleAutor zeekay