Die continue-Anweisung
Die continue-Anweisung ist die kleine Schwester von break. Sie beendet nicht die ganze Schleife, sondern nur die aktuelle Iteration: Sie überspringt den Rest des Blocks, und die Schleife geht direkt zur nächsten Iteration.
Diese Schleife gibt die Zahlen von 1 bis 10 aus, überspringt aber die Vielfachen von 3:
for zahl in range(1, 11):
if zahl % 3 == 0:
continue
print(zahl)Das gibt Folgendes aus:
1
2
4
5
7
8
10Bei 3, 6 und 9 ist die Bedingung wahr, und continue überspringt das print(zahl) darunter. Die Schleife läuft dann wie gewohnt mit der nächsten Zahl aus range() weiter.
Die continue-Anweisung steht meist am Anfang des Blocks und filtert die Elemente heraus, mit denen du dich nicht befassen willst: „Dieses interessiert mich nicht, weiter zum nächsten“. Der Rest des Blocks behandelt dann nur noch die interessanten.
Sei vorsichtig mit continue in einer while-Schleife. Es springt direkt zurück zur Bedingung. Steht die Zeile, die den Zähler erhöht, unter continue, wird sie also auch übersprungen. Der Zähler ändert sich dann nie wieder, und die Schleife endet nie. In einer for-Schleife kann das nicht passieren: Die Liste oder range() gibt der Schleife jedes Mal ihren nächsten Wert.
So schreibst du es:
Anweisungen
- 1
Bevor du einkaufen gehst, willst du nur die Dinge ausgeben, die du nicht zu Hause hast. Schreibe eine
for-Schleife übereinkaufsliste. Schreibe am Anfang ihres Blocks einif, das den Artikel mitcontinueüberspringt, wenn erinder Listezu_hausesteht. - 2
Gib nach dem
if, noch in der Schleife,Kaufen:und den Artikel aus. Die Ausgabe istKaufen: Milch,Kaufen: EierundKaufen: Äpfel, jedes in einer eigenen Zeile.