Die for-Anweisung in Python (Die for-Anweisung in Python), Lektion, Seite 723916
https://www.purl.org/stefan_ram/pub/for_python (Permalink) ist die kanonische URI dieser Seite.
Stefan Ram
Python-Kurs

Die for-Anweisung in Python 

Schreibweise einer Schleife mit while:

main.py

i = iter( 'abc' )

while True:

try:

ch = next( i )

print( ch )

except StopIteration:

break

Protokoll
a
b
c

Schreibweise derselben Schleife mit for:

main.py

for ch in 'abc':

print( ch )

Protokoll
a
b
c

Die for-Schleife ist eine Abkürzung für die zuvor gezeigte while-Schleife (einschließlich der Zeile »i = iter( 'abc' )«).

Syntax

Syntax
for i in o: print( i )

An Stelle von »i« kann auch ein anderer Variablenname stehen. Die Variable mit dem angegebenen Namen nennen wir Schleifenvariable.

An Stelle von »o« kann ein anderer Ausdruck stehen.

An Stelle von »print( i )« kann auch eine andere Suite stehen (wie bei »def«: einzeilig oder mehrzeilig).

Zum Abschluß muß eine Leerzeile eingegeben werden.

Anforderungen

Hinter »in« muß ein Ausdruck stehen, dessen Wert ein iterables  Objekt ist.

Semantik

Die Suite wird für jeden Wert des Iterators einmal ausgeführt.

Eine solchen einmalige Ausführung der Suite nennen wir einen Schleifendurchlauf.

Dabei wird der jeweilige Wert der Variablen hinter »for« zugewiesen.

Beispiele

Protokoll
for i in '012': print( i )
0
1
2
Protokoll

r = '012'

for i in r: print( i )

0
1
2

Die for-Schleife erzeugt aus einem iterablen Objekt (r) einen Iterator und iteriert diesen. Danach ist der Iterator verbraucht. Aber eine neue Vorschleife erzeugt aus demselben iterablen Objekt wieder einen neuen Iterator.

Ausgabe der Einträge aus »dir()« (ein Eintrag pro Zeile).

main.py
for s in dir():
print( s )
Protokoll
__annotations__
__builtins__
__doc__
__loader__
__name__
__package__
__spec__

Gültigkeitsbereich des Namens

Der Name hinter »for« ist nach dem Ende der Schleife weiterhin verwendbar.

Protokoll
for i in '012': print( i )
0
1
2
print( i )
2

Übungsaufgaben

/   Übungsaufgabe 0

Schreiben Sie ein Programm, das alle Einträge aus »dir()« ausgibt (ein Eintrag pro Zeile), die ein »a« enthalten.

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 stefanram723916 stefan_ram:723916 Die for-Anweisung in Python Stefan Ram, Berlin, and, or, near, uni, online, slrprd, slrprdqxx, slrprddoc, slrprd723916, slrprddef723916, 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/for_python