Kapitel 5. Iteratoren und Generatoren
Diese Arbeit wurde mithilfe von KI übersetzt. Wir freuen uns über dein Feedback und deine Kommentare: translation-feedback@oreilly.com
Wenn viele Menschen mit Erfahrung in einer anderen Sprache anfangen, Python zu lernen, sind sie erstaunt über den Unterschied in der for Schleifenschreibweise. Das heißt, anstatt zuschreiben
#Other languagesfor(i=0;i<N;i++){do_work(i);}
werden sie in eine neue Funktion namens range eingeführt:
# Pythonforiinrange(N):do_work(i)
Im Python-Codebeispiel rufen wir eine Funktion range auf, die alle Daten erzeugt, die wir für die for Schleife benötigen. Intuitiv betrachtet kann dies ein ziemlich zeitaufwändiger Prozess sein - wenn wir versuchen, eine Schleife über die Zahlen 1 bis 100.000.000 zu erstellen, müssen wir viel Zeit darauf verwenden, das Array zu erstellen! An dieser Stelle kommen die Generatoren ins Spiel: Sie ermöglichen es uns, diese Art von Funktionen einfach auszuwerten, sodass wir den Code dieser speziellen Funktionen lesen können, ohne dass die Leistung darunter leidet.
Um dieses Konzept zu verstehen, wollen wir eine Funktion implementieren, die mehrere Fibonacci-Zahlen berechnet, indem ...