Einführung
Mitfor loops undwhile loops in Python können Sie Aufgaben effizient automatisieren und wiederholen.
Manchmal kann jedoch ein externer Faktor die Ausführung Ihres Programms beeinflussen. In diesem Fall möchten Sie möglicherweise, dass Ihr Programm eine Schleife vollständig verlässt, einen Teil einer Schleife überspringt, bevor Sie fortfahren, oder diesen externen Faktor ignoriert. Sie können diese Aktionen mit den Anweisungenbreak
,continue
undpass
ausführen.
Break-Anweisung
In Python bietet Ihnen die Anweisungbreak
die Möglichkeit, eine Schleife zu verlassen, wenn eine externe Bedingung ausgelöst wird. Sie werden die Anweisungbreak
in den Codeblock unter Ihrer Schleifenanweisung einfügen, normalerweise nach einer bedingten Anweisungif
.
Schauen wir uns ein Beispiel an, das die Anweisungbreak
in einer Schleife vonfor
verwendet:
number = 0
for number in range(10):
if number == 5:
break # break here
print('Number is ' + str(number))
print('Out of loop')
In diesem kleinen Programm wird die Variablenumber
bei 0 initialisiert. Dann konstruiert einefor
-Anweisung die Schleife, solange die Variablenumber
kleiner als 10 ist.
Innerhalb derfor
-Schleife gibt es eineif
-Anweisung, die die Bedingung darstellt, dassif die Variablenumber
der Ganzzahl 5 entspricht,then die Schleife brechen.
Innerhalb der Schleife befindet sich auch eineprint()
-Anweisung, die bei jeder Iteration derfor
-Schleife ausgeführt wird, bis die Schleife unterbrochen wird, da sie nach derbreak
-Anweisung liegt.
Um zu wissen, wann wir uns außerhalb der Schleife befinden, haben wir eine letzteprint()
-Anweisung außerhalb derfor
-Schleife eingefügt.
Wenn wir diesen Code ausführen, erhalten wir folgende Ausgabe:
OutputNumber is 0
Number is 1
Number is 2
Number is 3
Number is 4
Out of loop
Dies zeigt, dass, sobald die Ganzzahlnumber
als äquivalent zu 5 ausgewertet wird, die Schleife unterbrochen wird, da das Programm mit der Anweisungbreak
dazu aufgefordert wird.
Die Anweisungbreak
bewirkt, dass ein Programm aus einer Schleife ausbricht.
Continue-Anweisung
Die Anweisungcontinue
gibt Ihnen die Möglichkeit, den Teil einer Schleife zu überspringen, in dem eine externe Bedingung ausgelöst wird, aber den Rest der Schleife abzuschließen. Das heißt, die aktuelle Iteration der Schleife wird unterbrochen, das Programm kehrt jedoch an den Anfang der Schleife zurück.
Die Anweisungcontinue
befindet sich innerhalb des Codeblocks unter der Schleifenanweisung, normalerweise nach einer bedingten Anweisungif
.
Unter Verwendung des gleichenfor
-Schleifenprogramms wie im obigen AbschnittBreak Statement verwenden wir einecontinue
-Anweisung anstelle einerbreak
-Anweisung:
number = 0
for number in range(10):
if number == 5:
continue # continue here
print('Number is ' + str(number))
print('Out of loop')
Der Unterschied bei der Verwendung dercontinue
-Anweisung anstelle einerbreak
-Anweisung besteht darin, dass unser Code trotz der Unterbrechung fortgesetzt wird, wenn die Variablenumber
als äquivalent zu 5 bewertet wird. Schauen wir uns unsere Ergebnisse an:
OutputNumber is 0
Number is 1
Number is 2
Number is 3
Number is 4
Number is 6
Number is 7
Number is 8
Number is 9
Out of loop
Hier trittNumber is 5
nie in der Ausgabe auf, aber die Schleife wird nach diesem Punkt fortgesetzt, um Zeilen für die Zahlen 6-10 zu drucken, bevor die Schleife verlassen wird.
Sie können die Anweisungcontinue
verwenden, um tief verschachtelten bedingten Code zu vermeiden oder eine Schleife zu optimieren, indem Sie häufig auftretende Fälle eliminieren, die Sie ablehnen möchten.
Die Anweisungcontinue
bewirkt, dass ein Programm bestimmte Faktoren überspringt, die innerhalb einer Schleife auftreten, und dann den Rest der Schleife durchläuft.
Pass Statement
Wenn eine externe Bedingung ausgelöst wird, können Sie mit der Anweisungpass
die Bedingung behandeln, ohne dass die Schleife in irgendeiner Weise beeinträchtigt wird. Der gesamte Code wird weiterhin gelesen, es sei denn, einebreak
oder eine andere Anweisung tritt auf.
Wie bei den anderen Anweisungen befindet sich die Anweisungpass
innerhalb des Codeblocks unter der Schleifenanweisung, normalerweise nach einer bedingten Anweisungif
.
Ersetzen wir mit demselben Codeblock wie oben die Anweisungbreak
odercontinue
durch eine Anweisungpass
:
number = 0
for number in range(10):
if number == 5:
pass # pass here
print('Number is ' + str(number))
print('Out of loop')
Die Anweisungpass
, die nach der bedingten Anweisungif
auftritt, weist das Programm an, die Schleife weiter auszuführen und die Tatsache zu ignorieren, dass die Variablenumber
während einer ihrer Iterationen 5 entspricht.
Wir führen das Programm aus und betrachten die Ausgabe:
OutputNumber is 0
Number is 1
Number is 2
Number is 3
Number is 4
Number is 5
Number is 6
Number is 7
Number is 8
Number is 9
Out of loop
Bei Verwendung der Anweisungpass
in diesem Programm stellen wir fest, dass das Programm genau so ausgeführt wird, als ob es keine bedingte Anweisung im Programm gäbe. Die Anweisungpass
weist das Programm an, diese Bedingung zu ignorieren und das Programm wie gewohnt weiter auszuführen.
Die Anweisungpass
kann minimale Klassen erstellen oder als Platzhalter fungieren, wenn Sie an neuem Code arbeiten und auf algorithmischer Ebene denken, bevor Sie Details herausarbeiten.
Fazit
Mit den Anweisungenbreak
,continue
undpass
in Python können Siefor
Schleifen undwhile
Schleifen effektiver in Ihrem Code verwenden.
Um mehr mit den Anweisungenbreak
undpass
zu arbeiten, können Sie unserem Projekt-Tutorial „https://www.digitalocean.com/community/tutorials/how-to-create-a-twitterbot-with-“ folgen. Python-3-und-die-Tweepy-Bibliothek [So erstellen Sie einen Twitterbot mit Python 3 und der Tweepy-Bibliothek]. “