for rolle in ["bitch","lover","child","mother","sinner","saint"]:
= "I'm a "+ rolle
liedzeile print(liedzeile)
I'm a bitch
I'm a lover
I'm a child
I'm a mother
I'm a sinner
I'm a saint
Bis jetzt haben wir lediglich Sachen in die Konsole herausgeben lassen, doch wie schon bei Functions ist der Zweck einer for loop meist, dass nach Durchführung etwas davon zurückbleibt. Aber return()
gibt es wie bereits erwähnt bei for loops nicht. Nehmen wir folgendes Beispiel:
for rolle in ["bitch","lover","child","mother","sinner","saint"]:
= "I'm a "+ rolle
liedzeile print(liedzeile)
I'm a bitch
I'm a lover
I'm a child
I'm a mother
I'm a sinner
I'm a saint
Der Output von dieser For-Loop sind zwar sechs Liederzeilen, wenn wir die Variabel liedzeile
aber jetzt anschauen ist dort nur das Resultat aus der letzten Durchführung gespeichert. Das gleiche gilt auch für die Variabel rolle
.
liedzeile
"I'm a saint"
rolle
'saint'
Das verrät uns etwas über die Funktionsweise des for loops: Bei jedem Durchgang werden die Variablen immer wieder überschrieben. Wenn wir also den Output des ganzen For-Loops abspeichern wollen, müssen wir dies etwas vorbereiten.
Dafür erstellen wir unmittelbar for dem for loops einen leeren Behälter, zum Beispiel eine leere Liste:
= [] refrain
Nun können wir innerhalb des Loops append()
nutzen, um den Output von einem Durchgang dieser Liste hinzuzufügen.
for rolle in ["bitch","lover","child","mother","sinner","saint"]:
= "I'm a "+ rolle
liedzeile refrain.append(liedzeile)
In unserer Liste refrain
ist nun der Wert jeder Iteration gespeichert.
refrain
["I'm a bitch",
"I'm a lover",
"I'm a child",
"I'm a mother",
"I'm a sinner",
"I'm a saint"]