Menu
CoddyTech

While-Schleife

Teil des Abschnitts Grundlagen der Python-Journey von Coddy. Lektion 36 von 77.

Eine while-Schleife unterscheidet sich von der for-Schleife. Eine for-Schleife ermöglicht es uns, über einen bestimmten range zu iterieren, während eine while-Schleife es uns ermöglicht, weiter zu iterieren, solange eine bestimmte Bedingung erfüllt ist.

Um eine while-Schleife zu verwenden, schreibe:

while condition:
	code

Der Code wird nur ausgeführt, wenn die Bedingung True ist.

Die Bedingung wird typischerweise mithilfe von Vergleichsoperatoren wie <= (kleiner oder gleich), >= (größer oder gleich), < (kleiner als), > (größer als) oder == (gleich) gebildet. Die Schleife läuft weiter, solange dieser Vergleich zu True ausgewertet wird, und stoppt, sobald er zu False wird.

Im Schleifenkörper musst du normalerweise die überprüfte Variable aktualisieren. Dies geschieht mit Operatoren für zusammengesetzte Zuweisungen wie += (addieren und zuweisen), -= (subtrahieren und zuweisen), *= (multiplizieren und zuweisen) oder /= (dividieren und zuweisen). Zum Beispiel ist x *= 2 eine Kurzform für x = x * 2. Ohne die Aktualisierung der Variable würde sich die Bedingung niemals ändern und die Schleife würde für immer laufen.

Es gibt viele Anwendungsfälle, in denen eine while-Schleife das Problem lösen würde, die for-Schleife jedoch nicht.

Betrachte zum Beispiel folgendes Problem:

Finde die kleinste Zweierpotenz, die größer als eine gegebene Zahl ist.

Um das Problem zu lösen, verwenden wir eine while-Schleife, die die aktuelle Potenz von 2 wiederholt mit 2 multipliziert, bis sie größer als die angegebene Zahl ist:

number = 27
power_of_two = 1
while power_of_two <= number:
    power_of_two *= 2
print(power_of_two)

Hier ist power_of_two <= number die Bedingung, die einen Vergleichsoperator verwendet, und power_of_two *= 2 aktualisiert die Variable in jeder Iteration mithilfe eines erweiterten Zuweisungsoperators. Sobald power_of_two number überschreitet, wird die Bedingung zu False, und die Schleife stoppt.

challenge icon

Aufgabe

Anfänger

Schreibe ein Programm, das eine Eingabe erhält, eine Gleitkommazahl.

Verwende eine while-Schleife, um die Eingabe durch 2 zu teilen, solange die Zahl größer oder gleich 3.5 ist.

Gib die erste Zahl aus, die kleiner als 3.5 ist.

Probier es selbst

quiz iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

Alle Lektionen in Grundlagen

Übe selbstständig: Online-Python-Compiler