yield in python (yield in python), Lektion, Seite 723928
https://www.purl.org/stefan_ram/pub/yield_python (Permalink) ist die kanonische URI dieser Seite.
Stefan Ram
Python-Kurs

Generatorfunktionen in Python 

Generatorfunktionen ergeben bei jedem Aufruf einen Iterator.

Dieser ergibt bei jedem Abrufe eines Objektes das Ergebnis einer yield-Anweisung.

Dazu läuft die Generatorfunktion bis einschließlich zu jener yield-Anweisung und hält danach bis zum nächsten Abruf ihres Iterators an.

Protokoll (etwas gekürzt)

def generator():
yield 0;
yield 1;
yield 2;

iterator = generator()

next( iterator )

0
next( iterator )
1
next( iterator )
2

iterator = generator()

print( *iterator )

0 1 2

iterator = generator()

tupel( iterator )

(0, 1, 2)

iterator = generator()

for x in iterator:
print( x )

0

1

2

for x in generator():
print( x )

0

1

2

print( *generator() )
0 1 2
tupel( generator() )
(0, 1, 2)
next( generator() )
0
next( generator() )
0
next( generator() )
0

def generator():
yield( -1 )
for i in range( 3 ):
yield( 2*i )

iterator = generator()

next( iterator )

-1

next( iterator )

0

next( iterator )

2

next( iterator )

4

next( iterator )

StopIteration
Protokoll (etwas gekürzt)

for i in gen():

yield i

gleiche Bedeutung

Protokoll (etwas gekürzt)
yield from gen()

Seiteninformationen und Impressum   |   Mitteilungsformular  |   "ram@zedat.fu-berlin.de" (ohne die Anführungszeichen) ist die Netzpostadresse von Stefan Ram.   |   Eine Verbindung zur Stefan-Ram-Startseite befindet sich oben auf dieser Seite hinter dem Text "Stefan Ram".)  |   Der Urheber dieses Textes ist Stefan Ram. Alle Rechte sind vorbehalten. Diese Seite ist eine Veröffentlichung von Stefan Ram. Schlüsselwörter zu dieser Seite/relevant keywords describing this page: Stefan Ram Berlin slrprd slrprd stefanramberlin spellched stefanram723928 stefan_ram:723928 yield in python Stefan Ram, Berlin, and, or, near, uni, online, slrprd, slrprdqxx, slrprddoc, slrprd723928, slrprddef723928, PbclevtugFgrsnaEnz Erklärung, Beschreibung, Info, Information, Hinweis,

Der Urheber dieses Textes ist Stefan Ram. Alle Rechte sind vorbehalten. Diese Seite ist eine Veröffentlichung von Stefan Ram.
https://www.purl.org/stefan_ram/pub/yield_python