Zum Hauptinhalt springen

Tutorial: While-Schleifen in Python

Lerne, wie While-Schleifen in Python funktionieren.
· 4 Min. lesen

Entdecke KI

Die While-Schleife ähnelt einer if-Abfrage: Sie führt den enthaltenen Code aus, wenn die Bedingung True ist. Im Gegensatz zur if-Anweisung läuft die While-Schleife jedoch so lange weiter, wie die Bedingung True bleibt.

Die While-Schleife

The while Loop

Die Syntax der While-Schleife ist der von if sehr ähnlich, wie du oben siehst. While-Schleifen sind nicht in jeder Situation die erste Wahl, aber in bestimmten Fällen äußerst nützlich.

Beispiel

Angenommen, du berechnest ein Modell numerisch auf Basis deiner Daten. Dabei wiederholst du typischerweise dieselben Schritte, bis der Fehler zwischen Modell und Daten unter einem bestimmten Grenzwert liegt. Immer wenn du ein Problem als Wiederhole eine Aktion, bis eine Bedingung erfüllt ist formulieren kannst, ist eine While-Schleife oft die passende Lösung.

Im folgenden Beispiel startest du mit einem Fehler von 50.0. Als Nächstes schreibst du eine While-Schleife mit der Bedingung error > 1, sodass sie erneut ausgeführt wird, solange der Fehler größer als 1 ist. Innerhalb der Schleife teilst du den Fehler durch vier und aktualisierst die Variable. Beim ersten Durchlauf erhalten wir 12,5.

Example

Python prüft danach mit dem neuen Fehlerwert 12,5 erneut die Schleifenbedingung. Die Bedingung ist wieder wahr und der Code wird ausgeführt.

example

Python springt erneut zur Bedingung zurück und versucht, den Code noch einmal auszuführen. Da 3,125 größer als 1 ist, wird die Berechnung durchgeführt.

Example

Schließlich ist die neue Bedingung der While-Schleife kleiner als 1, daher endet die Ausführung und der Code läuft nicht weiter.

Dieses Beispiel ist praktisch, denn jetzt bist du dran, selbst eine while-Schleife zu schreiben! Wir implementieren eine einfache Regelung für ein invertiertes Pendel. Wenn es von der Senkrechten abweicht, korrigiert die while-Schleife diese Abweichung schrittweise.

Beachte: Wenn deine while-Schleife ungewöhnlich lange läuft, steckt vermutlich ein Fehler drin. Achte insbesondere darauf, den Inhalt der Schleife korrekt einzurücken!

Beispiel für einen While-Schleifenfehler (läuft endlos)

Wenn du das Aktualisieren des Fehlerwerts auskommentierst oder entfernst und das Skript neu startest, wird der Fehler nicht verändert und die Bedingung bleibt immer wahr. Die While-Schleife läuft dann endlos.

Example of While Loop Error (Continuously Running)

Passiert dir das, musst du das Python-Programm mit Strg + C abbrechen.

Beispiel

Im nächsten Beispiel legst du die Variable offset mit dem Anfangswert 8 an. Dann schreibst du eine while-Schleife, die so lange läuft, bis offset gleich 0 ist.

Innerhalb der while-Schleife:

  • Gibst du den Text "correcting..." aus.
  • Verringerst du anschließend offset um 1, zum Beispiel mit offset = offset - 1.
  • Und zum Schluss gibst du offset aus, um die Änderung zu sehen.
Example

Wenn wir das Programm ausführen, erhalten wir folgende Ausgabe:

correcting...
7
correcting...
6
correcting...
5
correcting...
4
correcting...
3
correcting...
2
correcting...
1
correcting...
0

Probiere es selbst aus.

Mehr zu While-Schleifen findest du in diesem Video aus unserem Kurs Intermediate Python.

Dieser Inhalt stammt aus dem DataCamp-Kurs Intermediate Python von Hugo Bowne-Anderson.

Schau dir auch unser Tutorial zu Schleifen in Python sowie das Tutorial Eine Do-While-Schleife in Python emulieren an, um weiterzulernen und Schleifen in Python zu üben.

Themen

Ähnlich

Tutorial

Python-Schleifen-Tutorial

Tutorial

Loop-Schleifen in Python-Tutorial