pythons Generatoren verstehen
, die sich in die Welt der Python -Generatoren eintauchen, kann verwirrend sein, insbesondere wenn Sie an das Java -Ökosystem gewöhnt sind. Im Gegensatz zu Javas Threading -Modell erfüllen die Generatoren in Python einen bestimmten Zweck.
Definition und Implementierung
Ein Generator ist eine Funktion, die das Keyword für Ertragsschüsse verwendet, um einen Iterator zurückzugeben. Wenn der Generator aufgerufen wird, erzeugt der Generator eine Sequenz von Werten nacheinander. Anstatt die gesamte Sequenz im Speicher zu berechnen und zu speichern, geben Generatoren Werte auf Anfrage.
betrachten Sie das folgende Beispiel:
def my_gen(n): yield n yield n 1
Aufruf My_Gen (6) Erstellt ein Objekt, das die Werte 6 und 7 ergibt, wenn sie durch Iterated:
g = my_gen(6) next(g) # Output: 6 next(g) # Output: 7
für Schleifen, die automatisch als nächstes für Sie rufen und es einfach machen, über die Sequenz zu iterieren:
for n in my_gen(6): print(n) # Output: # 6 # 7
Vorteile von Generatoren
Generatoren bieten mehrere Vorteile an:
def fib(): a, b = 0, 1 while True: yield a a, b = b, a b
schlussfolgerung
Generatoren sind ein mächtiges Werkzeug in Python, das Speichereffizienz, Prägnant und die Fähigkeit, unendliche Streams darzustellen. Indem Sie die Macht der Generatoren nutzen, können Sie die Flexibilität und Fähigkeit Ihres Python -Codes verbessern.Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.
Copyright© 2022 湘ICP备2022001581号-3