Die for...else-Anweisung in Python

Manav Narula 10 August 2021
Die for...else-Anweisung in Python

In der Programmierung verwenden wir Schleifen, um über verschiedene Objekttypen zu iterieren. Die for-Schleife ist aufgrund ihrer Einfachheit eine der am häufigsten verwendeten Schleifen.

Python hat eine sehr interessante Funktion, die mit der for-Schleife verbunden ist. Es erlaubt uns, die else-Anweisung mit der for-Schleife zu verwenden, um Bedingungsausführung und Iteration zu kombinieren. Das Schlüsselwort else wird im Allgemeinen in if-else-Anweisungen verwendet, wo wir es verwenden, um einige Befehle auszuführen, wenn die if-Bedingung false zurückgibt.

Dies ist jedoch nicht der Fall, wenn wir in Python mit der for-Schleife arbeiten. Anweisungen im Block else werden basierend auf einer Abschlussklausel ausgeführt, wenn die Schleife beendet ist, vorausgesetzt, die Schleife trifft in keiner ihrer Iterationen auf die Anweisung break. Die Anweisung break wird verwendet, um aus einer Schleife auszubrechen. Wenn keine break-Anweisung angetroffen wird, werden nach der Schleife auch die else-Blockanweisungen ausgeführt.

Wenn die Anweisung continue angetroffen wird, wird die Anweisung else ausgeführt. Dies liegt daran, dass die Anweisung continue die nächste Iteration erzwingt. Es bricht die Schleife nicht aus.

Siehe den folgenden Code.

for i in range(3):
    if i > 5:
        break
else:
    print("Else Statements")

for i in range(3):
    if i > 1:
        print("Break")
        break
else:
    print("Else Statements")

for i in range(3):
    if i > 1:
        continue
else:
    print("Else Statements after Continue")

Ausgabe:

Else Statements
Break
Else Statements after Continue

Nun wird die Verwendung des for...else von vielen erfahrenen Programmierern nicht gut aufgenommen, da dies zu Verwirrung über die Verwendung des else-Schlüsselworts führen kann. Es hat jedoch immer noch einige nützliche Anwendungen in Python.

Wir können es beispielsweise verwenden, wenn wir nach einem Element in einer Liste suchen und wissen möchten, ob es in der Liste vorhanden ist oder nicht. Der folgende Codeausschnitt implementiert dies.

a = 15
lst = [10, 5, 6, 8, 9, 7, 5, 11]
for i in lst:
    if i == 15:
        print("Found")
        break
else:
    print("Not Found Loop Over")

Ausgabe:

Not Found Loop Over

Die Verwendung des Schlüsselworts else ist nicht auf die for-Schleife beschränkt und kann mit der while-Schleife auch in Python verwendet werden.

Manav Narula avatar Manav Narula avatar

Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.

LinkedIn

Verwandter Artikel - Python Statement