Python-while-Schleifen
Einleitung
Beim Programmieren müssen Sie die gleiche Aufgabe oft mehrmals wiederholen. Tatsächlich ist das Durchlaufen und Wiederholen einer Operation einer der Eckpfeiler der Programmierung. Schließlich ist eines der Dinge, in denen Computer viel besser sind als Menschen, sich wiederholende Aufgaben auszuführen, ohne müde zu werden oder Fehler zu machen.
Eine der einfachsten Möglichkeiten, ein Programm dazu zu bringen, die gleiche Aufgabe zu wiederholen, ist die Verwendung einer while-Schleife. Eine while-Schleife wiederholt denselben Codeblock, während eine Bedingung wahr ist. Wenn diese Bedingung falsch wird, wird die Schleife unterbrochen, und der reguläre Codefluss wird fortgesetzt.
Die Struktur einer while-Schleife ähnelt der, die Sie in der letzten Anleitung mit if gefunden haben. Eine while-Schleife beginnt mit dem Wort while, gefolgt von einer Klammer, die die Bedingung der Schleife und einen Doppelpunkt enthält. Die folgenden Zeilen sind eingerückt und werden in der Schleife ausgeführt.
Unendlich, während
Schauen Sie sich diese while-Schleife an. Probieren Sie es selbst in Ihrem Dolmetscher aus, um genau zu sehen, was er tut. Sie werden vielleicht etwas überrascht sein.
Import time for sleep
import time
While loop
while(True):
print("looping...")
time.sleep(2)
Was ist passiert? Vielmehr, was passiert? Wenn Sie noch nicht herausgefunden haben, wie Sie es stoppen können, drücken Sie einfach Strg+C. Eine while-Schleife wird auf unbestimmte Zeit ausgeführt, solange die Bedingung, unter der sie angegeben ist, True bleibt. Die obige Schleife wurde mit True als Bedingung angegeben, die niemals nicht wahr sein wird.
Gelegentlich müssen Sie eine Endlosschleife ausführen. Sie sind nützlich für Dinge wie die Überwachung von Daten auf Änderungen. Wenn dies der Fall ist, ist das Übergeben von True ein sicherer Weg, dies zu erreichen.
Es gibt noch ein weiteres Teil dieses Puzzles. sleep() ist eine Methode, die Python für eine bestimmte Anzahl von Sekunden pausieren lässt. Geben Sie sleep() in der Klammer die Anzahl der Sekunden, für die es pausieren soll, und es wird die Ausführung Ihres Programms anhalten. Es ist ziemlich üblich, sleep() in Schleifen zu sehen, insbesondere in unendlichen.
Countdown
Eine Möglichkeit, eine while-Schleife zu stoppen, besteht darin, eine Zählvariable zu verwenden. Legen Sie die Bedingung der Schleife auf die Zahl fest, bei der die Schleife aufhören soll, zu iterieren, und erhöhen Sie die Zählvariable jedes Mal, wenn die Schleife ausgeführt wird.
count = 0
while(count < 10):
print("loop number: %d" % (count + 1))
count += 1
Die Variable count beginnt bei Null. Die für die Schleife angegebene Bedingung besagt, dass sie ausgeführt wird, solange count kleiner als zehn ist. Es wird nicht ausgeführt, wenn count zehn ist. Beachten Sie jedoch, dass die Schleife zehnmal ausgeführt wird. Das liegt daran, dass die Schleife ausgeführt wird, während count gleich Null ist. Die Ausgabe kann sagen, dass der erste Durchlauf die Nummer eins und der letzte zehn ist, da die Variable, die in die Zeichenfolge eingefügt wird, count + 1 ist, sodass eins mehr als der aktuelle count-Wert angezeigt wird. Nach print() wird eins zu count hinzugefügt.
Brechen
Sie können eine while-Schleife auch innerhalb der Schleife mit break unterbrechen. Es funktioniert in der Regel am besten in Verbindung mit if und einem bestimmten Umstand, der dazu führen würde, dass eine ansonsten endlose Schleife unterbrochen wird.
Import Random for random number generator
import random
Infinite while loop with break condition
while(True):
num = random.randint(1, 10)
print(num)
if(num == 7):
print("Stopping...")
break
else:
print("Still looping...")
Die Schleife wird so eingerichtet, dass sie unbegrenzt ausgeführt wird, indem True als Bedingung der Schleife übergeben wird. Es gibt jedoch eine Bedingung, in der die Schleife unterbrochen werden kann. Wenn die Variable num während einer der Iterationen gleich sieben ist, erreicht der Code die Unterbrechung und unterbricht die Schleife.
Dieses Beispiel ist nicht ganz realistisch. Die Zufallsbibliothek wurde importiert, und ein Zufallszahlengenerator wurde verwendet, um den Wert von num bei jeder Iteration zu erstellen. Der spezielle Code random.randint(1, 10)) ist eine Methode aus der Zufallsbibliothek, die eine Zufallszahl zwischen eins und zehn auswählt. Der Bereich kann durch Ändern der Start- und Endnummer angegeben werden. In einem realen Szenario wäre es wahrscheinlich eine Benutzereingabe oder ein Signal von einem anderen Teil des Programms, das die Schleife unterbrechen würde. Tatsächlich werden Endlosschleifen wie diese oft verwendet, um auf Benutzereingaben zu lauschen.
Schlussfolgerung
While-Schleifen sind eines der wichtigsten Werkzeuge bei der Wiederholung von Operationen in Python. Sie können verwendet werden, um eine bestimmte Anzahl von Malen zu iterieren, bis ein Signal oder eine Bedingung erfüllt ist, oder auf unbestimmte Zeit. Obwohl ihre Struktur sehr einfach ist, ist es wichtig, den Überblick darüber zu behalten, was sich in der Schleife befindet und wann genau sie enden soll. Es ist sehr einfach, eine davon zuzulassen, während dir die Schlaufen entgleiten. Eine falsch erstellte Schleife kann zu übermäßiger Ressourcennutzung, Hängern und einem falschen Programmablauf führen. Achte nur darauf, welchen Weg deine Runde nimmt.
Inhaltsverzeichnis
- Python Einführung und Installationsanleitung
- Python-Dateien und der Interpreter
- Experimentieren mit Zahlen und Text in Python
- Python-Variablen
- Arbeiten mit Zahlenvariablen in Python
- Grundlagen von Python-Strings
- Erweiterte Python-Zeichenfolgen
- Python Kommentare
- Python-Listen
- Methoden der Python-Liste
- Mehrdimensionale Python-Listen
- Python-Tupel
- Boolesche Python-Operatoren
- Python If-Anweisungen
- Python-while-Schleifen
- Python für Schleifen
- Python-Wörterbücher
- Python-Wörterbücher für Fortgeschrittene
- Python-Funktionen