So verwenden Sie eine While-Schleife in Python

Die while-Schleife von Python kann für Anfänger verwirrend sein. Wenn Sie jedoch das Konzept der Schleife verstanden haben, werden Sie feststellen, dass das "while" vor der Python-Schleife eine bloße Bedingung ist.

Werfen wir einen Blick auf Pythons while- Schleife und wie Sie damit Programmierprobleme lösen können.

Wo können Sie eine While-Schleife verwenden?

Eine bestimmte Bedingung folgt einer while- Schleife. Es bestimmt, was innerhalb der Schleife passiert. Während diese Bedingung wahr bleibt, werden die Ausdrücke in der Schleife weiterhin ausgeführt.

Im Allgemeinen fällt Ihnen eine Schleife ein, wenn Sie jedes Element einer Liste oder eines Arrays in der Programmierung durcharbeiten müssen. Eine while- Schleife wird auch so lange ausgeführt, bis eine Anweisung innerhalb der Schleife sie stoppt.

Verwandte Themen: Funktionsweise der Do-While-Schleife in der Computerprogrammierung

Ein gutes Beispiel wäre eine Inspektionstätigkeit zur Identifizierung kranker Tiere in einer Schafherde. Sie können dies der while- Schleife zuordnen, indem Sie die Temperaturgrenze auf 37 Grad einstellen. Jeder Wert darüber bedeutet, dass ein Schaf krank ist.

Um diese Aussage in einer while- Schleife zu treffen, können Sie sagen: "Während die Temperatur eines Schafs über 37 Grad liegt, drucken Sie ungesund."

Wie erwartet gibt diese while- Anweisung das Ergebnis kontinuierlich "ungesund" aus, solange die festgelegte Bedingung wahr bleibt.

Verwendung von Python während Loops – in der Praxis

Wie bereits erwähnt, wird eine while-Schleife unbegrenzt ausgeführt, wenn keine festgelegten Bedingungen vorliegen, die sie stoppen. Hier ist ein Beispiel für eine unbestimmte while- Schleife:

 while 3 < 5:
print("It's less than 5")

Die Bedingung für die while- Schleife im obigen Code ist 3 <5 .

Schauen wir uns nun den while- Schleifencode für das Herdeninspektionsbeispiel aus dem vorherigen Abschnitt an:

 StdTemperature = 37
sheep_temp = 38
while sheep_temp > StdTemperature:
print("unhealthy")
else:
print("healthy")

Im obigen Code-Snippet beträgt die Temperaturgrenze 37. Die Variable cow_temp speichert die Temperatur jedes Schafs. Die while- Schleife gibt weiterhin "ungesund" aus, solange die Temperatur über 37 liegt. Dies ist in diesem Fall die Bedingung für die Ausführung der Schleife. Wenn Sie ham_temp auf einen Wert kleiner als 37 ändern, wird die else- Anweisung ausgeführt.

Die Verwendung einer while- Schleife zur Lösung des obigen Problems ist jedoch zu primitiv und nicht skalierbar. Dies liegt daran, dass Sie den Wert der Variablen cow_temp jedes Mal manuell ändern müssen, wenn Sie ein Schaf testen müssen. Es bedeutet, dass es schwierig ist, es auf einem Array zu betreiben. Die Lösung hierfür geht über den Rahmen dieses Artikels hinaus.

Ungeachtet dessen sollte dieses Beispiel einige Einblicke in die Funktionsweise einer while- Anweisung in einer Python-Schleife geben.

Um zu verhindern, dass der Code kontinuierlich ausgeführt wird, können Sie eine break- Anweisung wie folgt in den Beispielcode einfügen:

 StdTemperature = 37
sheep_temp = 38
while sheep_temp > StdTemperature:
print("unhealthy")
break
else:
print("healthy")

Sehen wir uns einen anderen Anwendungsfall einer while- Schleife an, indem wir eine Liste der Zahlen zwischen 1 und 10 erstellen:

 a = 11
b = 1
while b < a:
a -= 1
print(a)

Der obige Codeblock zählt von Nummer 10 bis 1. Sie können die Aussage auch so interpretieren: "Wenn einer kleiner als elf ist, subtrahieren Sie einen von jeder vorherigen Zahl und geben Sie das Ergebnis als nächste Zählung an." Es funktioniert, indem bei jeder Ausführung der while- Anweisung eine von einer vorherigen Nummer entfernt wird.

Sie können auch die obige while- Schleife ändern, um jeden Ausgang mit 2 zu multiplizieren:

 a = 11
b = 1
while b < a:
a -= 1
print(a, "x", "2", "=", a*2)

Sie können auch einen booleschen Ausdruck mit einer while- Schleife verwenden. Schauen Sie sich das folgende Code-Snippet an, um zu sehen, wie dies funktioniert:

 a = 10
b = 2
while b < 10:
b+=1
print(b)
if b==8:
print(a)
break

Der obige Code gibt eine Ausgabe aus, die jede zweite Ganzzahl von 3 bis 10 ohne die Zahl 9 zählt. Der break- Ausdruck stellt sicher, dass die Schleife nicht mehr zählt, sobald sie 10 erreicht. Um ihre Relevanz zu verstehen, können Sie die break- Anweisung entfernen, um zu sehen, wie es kommt durch.

Anstatt jedoch eine Pause zu verwenden , können Sie den continue- Ausdruck verwenden, um das gleiche Ergebnis zu erzielen. Um zu verstehen, wie das funktioniert, versuchen Sie, das obige Code-Snippet mit dem folgenden zu vergleichen:

 a = 10
b = 2
while b < 10:
b+=1
if b==9:
continue
print(b)

Anstatt die Ausgabe mit einer Unterbrechung zu steuern , weist der obige Code Ihr Programm an, die Zählung fortzusetzen, ohne 9 zu berücksichtigen.

Sie können auch die obige while-Schleife ändern, um alle geraden Zahlen zwischen 1 und 10 auszugeben:

 a = 10
b = 1
while b <= 10:
b+=1
if b%2==0:
print(b)

Hinweis: Wenn Sie diese Beispiele nicht mit Pythons integriertem IDLE ausführen möchten, können Sie auch Jupyter Notebook verwenden. Sie müssen jedoch eine virtuelle Python-Umgebung erstellen und aktivieren , um diese Option verwenden zu können.

Hat eine While-Schleife in der Praxis Einschränkungen?

Während es bestimmte Probleme in realen Ereignissen löst, weist eine while- Schleife in Python einige Einschränkungen auf, wenn es sich um eine Sammlung von Arrays handelt.

In der Praxis bietet eine while- Schleife im Gegensatz zur for- Schleife keine Spezifität in einer Kontrollflussanweisung. Eine while- Schleife hat jedoch auch ihre Anwendungen. Daher ist es erforderlich, zu verstehen, wie sie in Ihren Programmen verwendet wird.