Articles

Wie Sie Break-, Continue- und Pass-Anweisungen bei der Arbeit mit Schleifen in Python 3 verwenden

Posted on

Einführung

Mit For- und While-Schleifen in Python können Sie Aufgaben auf effiziente Weise automatisieren und wiederholen.

Aber manchmal kann ein externer Faktor die Art und Weise beeinflussen, wie Ihr Programm läuft. Wenn dies der Fall ist, möchten Sie vielleicht, dass Ihr Programm eine Schleife komplett verlässt, einen Teil der Schleife überspringt, bevor es weiterläuft, oder den externen Faktor ignoriert. Sie können diese Aktionen mit den Anweisungen breakcontinue und pass ausführen.

Break-Anweisung

In Python bietet Ihnen die break-Anweisung die Möglichkeit, eine Schleife zu verlassen, wenn eine externe Bedingung ausgelöst wird. Sie setzen die break-Anweisung innerhalb des Codeblocks unter Ihrer Schleifenanweisung ein, normalerweise nach einer bedingten if-Anweisung.

Schauen wir uns ein Beispiel an, das die break-Anweisung in einer for-Schleife verwendet:

number = 0for 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 Variablenumberauf 0 initialisiert. Dann konstruiert einefor-Anweisung die Schleife so lange, wie die Variablenumberkleiner als 10 ist.

Innerhalb der for-Schleife befindet sich eine if-Anweisung, die die Bedingung stellt, dass die Schleife abbricht, wenn die Variable number gleich der ganzen Zahl 5 ist.

Innerhalb der Schleife befindet sich außerdem eine print()-Anweisung, die bei jeder Iteration der for-Schleife ausgeführt wird, bis die Schleife abbricht, da sie nach der break-Anweisung steht.

Um zu wissen, wann wir aus der Schleife heraus sind, haben wir eine abschließende print()-Anweisung außerhalb der for-Schleife eingebunden.

Wenn wir diesen Code ausführen, sehen wir folgende Ausgabe:

Output
Number is 0Number is 1Number is 2Number is 3Number is 4Out of loop

Das zeigt, dass die Schleife abbricht, sobald die Ganzzahl number als gleichwertig zu 5 bewertet wird, da das Programm mit der break-Anweisung dazu aufgefordert wird.

Die break-Anweisung bewirkt, dass ein Programm aus einer Schleife ausbricht.

Fortsetzen-Anweisung

Die continue-Anweisung gibt Ihnen die Möglichkeit, den Teil einer Schleife, in dem eine externe Bedingung ausgelöst wird, zu überspringen, aber den Rest der Schleife zu beenden. Das heißt, die aktuelle Iteration der Schleife wird unterbrochen, aber das Programm kehrt an den Anfang der Schleife zurück.

Die continue-Anweisung wird innerhalb des Codeblocks unter der Schleifenanweisung stehen, normalerweise nach einer bedingten if-Anweisung.

Bei Verwendung desselben for-Schleifenprogramms wie im obigen Abschnitt über die Break-Anweisung verwenden wir eine continue-Anweisung anstelle einer break-Anweisung:

number = 0for number in range(10): if number == 5: continue # continue here print('Number is ' + str(number))print('Out of loop')

Der Unterschied bei der Verwendung der continue-Anweisung anstelle einer break-Anweisung besteht darin, dass unser Code trotz der Unterbrechung weiterläuft, wenn die Variable number als gleichwertig zu 5 ausgewertet wird. Schauen wir uns unsere Ausgabe an:

Output
Number is 0Number is 1Number is 2Number is 3Number is 4Number is 6Number is 7Number is 8Number is 9Out of loop

Hier kommt Number is 5 nie in der Ausgabe vor, aber die Schleife fährt nach diesem Punkt fort, um Zeilen für die Zahlen 6-10 zu drucken, bevor die Schleife verlassen wird.

Sie können die continue-Anweisung verwenden, um tief verschachtelten bedingten Code zu vermeiden oder um eine Schleife zu optimieren, indem Sie häufig auftretende Fälle, die Sie verwerfen möchten, eliminieren.

Die continue-Anweisung bewirkt, dass ein Programm bestimmte Faktoren, die innerhalb einer Schleife auftreten, überspringt, dann aber den Rest der Schleife durchläuft.

Pass-Anweisung

Wenn eine externe Bedingung ausgelöst wird, können Sie mit der pass-Anweisung die Bedingung behandeln, ohne dass die Schleife in irgendeiner Weise beeinflusst wird; der gesamte Code wird weiterhin gelesen, bis eine break oder eine andere Anweisung auftritt.

Wie bei den anderen Anweisungen wird die pass-Anweisung innerhalb des Codeblocks unter der Schleifenanweisung stehen, typischerweise nach einer bedingten if-Anweisung.

Benutzen wir den gleichen Codeblock wie oben und ersetzen wir die break oder continue-Anweisung durch eine pass-Anweisung:

number = 0for number in range(10): if number == 5: pass # pass here print('Number is ' + str(number))print('Out of loop')

Die pass-Anweisung, die nach der if-Bedingungsanweisung steht, sagt dem Programm, dass es die Schleife weiterlaufen lassen und die Tatsache ignorieren soll, dass die Variable number bei einer ihrer Iterationen als gleichwertig zu 5 ausgewertet wird.

Wir führen das Programm aus und betrachten die Ausgabe:

Output
Number is 0Number is 1Number is 2Number is 3Number is 4Number is 5Number is 6Number is 7Number is 8Number is 9Out of loop

Bei Verwendung der pass-Anweisung in diesem Programm stellen wir fest, dass das Programm genau so abläuft, wie es ablaufen würde, wenn keine bedingte Anweisung im Programm vorhanden wäre. Die pass-Anweisung weist das Programm an, diese Bedingung zu ignorieren und das Programm wie gewohnt weiterlaufen zu lassen.

Die pass-Anweisung kann minimale Klassen erzeugen oder als Platzhalter dienen, wenn man an neuem Code arbeitet und auf einer algorithmischen Ebene denkt, bevor man Details ausarbeitet.

Fazit

Die breakcontinue, und pass-Anweisungen in Python ermöglichen es Ihnen, for-Schleifen und while-Schleifen effektiver in Ihrem Code einzusetzen.

Um mehr mit break und pass-Anweisungen zu arbeiten, können Sie unserem Projekt-Tutorial „How To Create a Twitterbot with Python 3 and the Tweepy Library“

folgen.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.