Kursinhalt
Python-Schleifen-Tutorial
Python-Schleifen-Tutorial
Endlosschleife
Eine Endlosschleife ist eine Schleife, die niemals endet, weil die Bedingung, die sie steuert, niemals zu False
ausgewertet wird. Diese Schleifen können dazu führen, dass ein Programm hängt oder abstürzt, daher sollten sie vermieden werden, es sei denn, sie sind ausdrücklich beabsichtigt.
Wenn eine Bedingung immer True
ist, läuft die Schleife für immer. Zum Beispiel, verwenden wir ein reisebezogenes Szenario:
- Die Bedingung
"Barcelona" in [...]
wird immerTrue
sein, weil"Barcelona"
in der Liste vorhanden ist. Es ist gleichbedeutend mitwhile True:
; - Die Schleife druckt kontinuierlich
"I found Barcelona!"
ohne eine Möglichkeit, sie zu stoppen.
Eine unsachgemäß aktualisierte Schleifenvariable kann ebenfalls zu einer Endlosschleife führen. Zum Beispiel:
- Der Index
i
wird nie erhöht, daher ist die Bedingungi < len(travel_list)
immerTrue
; - Die Schleife druckt unendlich oft die erste Stadt (
"Monako"
).
Um Endlosschleifen zu vermeiden, stellen Sie sicher, dass die Schleifenbedingung so gestaltet ist, dass sie schließlich zu False
ausgewertet wird. Das bedeutet, dass die Bedingung dynamisch sein und sich während der Ausführung der Schleife ändern muss. Wenn Sie eine Variable (wie einen Zähler) verwenden, um die Schleife zu steuern, stellen Sie außerdem sicher, dass sie innerhalb der Schleife ordnungsgemäß inkrementiert oder aktualisiert wird, um zu verhindern, dass die Bedingung auf unbestimmte Zeit True
bleibt.
1. Was ist das Problem mit dem folgenden Code?
2. Wie können Sie diese Schleife ändern, um zu verhindern, dass sie für immer läuft?
Danke für Ihr Feedback!