Die for-Schleife in Python ist eine iterative Funktion. Wenn Sie ein Sequenzobjekt wie eine Liste haben, können Sie die for-Schleife verwenden, um über die Elemente innerhalb der Liste zu iterieren.
Die Funktionalität der for-Schleife unterscheidet sich nicht sehr von dem, was Sie in vielen anderen Programmiersprachen sehen.
In diesem Artikel werden wir die Python for-Schleife im Detail erkunden und lernen, über verschiedene Sequenzen wie Listen, Tupel und mehr zu iterieren. Darüber hinaus werden wir lernen, den Ablauf der Schleife mit den break- und continue-Anweisungen zu steuern.
Wann man die for-Schleife verwenden sollte
Jedes Mal, wenn Sie einen Block Code eine feste Anzahl von Malen wiederholen müssen. Wenn Sie die Anzahl der Wiederholungen nicht kennen, verwenden Sie stattdessen eine „while-Schleife“.
Syntax der for-Schleife in Python
Die grundlegende Syntax der for-Schleife in Python sieht in etwa wie die unten genannte aus.
Syntax des Python for-Loops im Detail
- Das erste Wort der Anweisung beginnt mit dem Schlüsselwort „for“, das den Beginn der for-Schleife kennzeichnet.
- Dann haben wir die Iterator-Variable, die über die Sequenz iteriert und innerhalb der Schleife verwendet werden kann, um verschiedene Funktionen auszuführen.
- Als Nächstes kommt das Schlüsselwort „in“ in Python, das der Iterator-Variable sagt, dass sie für Elemente innerhalb der Sequenz durchlaufen soll.
- Und schließlich haben wir die Sequenzvariable, die entweder eine Liste, ein Tupel oder eine andere Art von Iterator sein kann.
- Der Teil der Anweisungen der Schleife ist der Bereich, in dem Sie mit der Iterator-Variable spielen und verschiedene Funktionen ausführen können.
Drucken Sie einzelne Buchstaben einer Zeichenfolge mit der for-Schleife
Python-Zeichenfolge ist eine Sequenz von Zeichen. Wenn Sie in einer Ihrer Programmieranwendungen die Zeichen einer Zeichenfolge einzeln durchgehen müssen, können Sie hier die for-Schleife verwenden.
So würde das für Sie funktionieren.
Ausgabe:
Der Grund, warum diese Schleife funktioniert, liegt daran, dass Python eine „Zeichenkette“ als eine Sequenz von Zeichen betrachtet, anstatt die Zeichenkette als Ganzes zu betrachten.
Verwendung der for-Schleife zur Iteration über eine Python-Liste oder ein Tupel
Listen und Tupel sind iterable Objekte. Schauen wir uns nun an, wie wir über die Elemente innerhalb dieser Objekte iterieren können.
Ausgabe:
Lassen Sie uns nun vorangehen und daran arbeiten, über die Elemente eines Tupels zu iterieren.
Verschachtelte Python for-Schleifen
Wenn wir eine for-Schleife innerhalb einer anderen for-Schleife haben, wird dies als verschachtelte for-Schleife bezeichnet. Es gibt mehrere Anwendungen einer verschachtelten for-Schleife.
Betrachten Sie das obige Listenbeispiel. Die for-Schleife gibt einzelne Wörter aus der Liste aus. Aber was ist, wenn wir stattdessen die einzelnen Zeichen jedes Worts innerhalb der Liste ausgeben möchten?
Hier funktioniert eine verschachtelte for-Schleife besser. Die erste Schleife (äußere Schleife) durchläuft die Wörter nacheinander. Die zweite Schleife (innere Schleife) durchläuft die Zeichen jedes Worts.
Ausgabe
A nested loop is structurally similar to nested if
statements
Python for-Schleife mit range() Funktion
Python range ist eine der eingebauten Funktionen. Wenn Sie möchten, dass die for-Schleife eine bestimmte Anzahl von Malen durchläuft, oder wenn Sie einen Bereich von Objekten angeben müssen, die ausgegeben werden sollen, funktioniert die range-Funktion wirklich gut.
Bei der Arbeit mit range()
können Sie zwischen 1 und 3 ganzzahlige Argumente übergeben:
start
gibt den ganzzahligen Wert an, mit dem die Sequenz beginnt. Wenn dies nicht enthalten ist, beginntstart
bei 0stop
wird immer benötigt und ist die Ganzzahl, bis zu der gezählt wird, aber nicht eingeschlossenstep
legt fest, wie viel bei der nächsten Iteration erhöht (oder bei negativen Zahlen verringert) werden soll. Wenn dies ausgelassen wird, wirdstep
standardmäßig auf 1 gesetzt.
Betrachten Sie das folgende Beispiel, in dem ich die Zahlen 1, 2 und 3 ausgeben möchte:
Die Range-Funktion akzeptiert neben dem Start und dem Ende auch einen anderen Parameter. Dies ist der Step-Parameter. Er gibt der Range-Funktion an, wie viele Zahlen zwischen jedem Zählen übersprungen werden sollen.
Im folgenden Beispiel habe ich die Zahl 3 als Schritt verwendet, und Sie können sehen, dass die Ausgabezahlen die vorherige Zahl + 3 sind.
Wir können auch einen negativen Wert für unser step
-Argument verwenden, um rückwärts zu iterieren, aber wir müssen unsere start
– und stop
-Argumente entsprechend anpassen:
Hier ist 100 der start
-Wert, 0 ist der stop
-Wert, und -10
ist die Reichweite, so dass die Schleife bei 100 beginnt und bei 0 endet und sich bei jeder Iteration um 10 verringert. Dies geschieht in der Ausgabe:
Output100
90
80
70
60
50
40
30
20
10
Beim Programmieren in Python verwenden for
-Schleifen oft den Sequenztyp range()
als ihre Parameter für die Iteration.
Break-Anweisung mit for-Schleife
Die break-Anweisung wird verwendet, um die for-Schleife vorzeitig zu beenden. Sie wird verwendet, um die for-Schleife zu unterbrechen, wenn eine bestimmte Bedingung erfüllt ist.
Angenommen, wir haben eine Liste von Zahlen, und wir möchten überprüfen, ob eine Zahl vorhanden ist oder nicht. Wir können über die Liste der Zahlen iterieren und wenn die Zahl gefunden wird, aus der Schleife ausbrechen, weil wir nicht über die verbleibenden Elemente iterieren müssen.
In diesem Fall verwenden wir die Python if else-Bedingung zusammen mit unserer for-Schleife.
Die continue-Anweisung mit for-Schleife
Wir können continue-Anweisungen innerhalb einer for-Schleife verwenden, um die Ausführung des Körper der for-Schleife für eine bestimmte Bedingung zu überspringen.
Lassen Sie uns sagen, wir haben eine Liste von Zahlen, und wir möchten die Summe der positiven Zahlen ausdrucken. Wir können die continue-Anweisungen verwenden, um die for-Schleife für negative Zahlen zu überspringen.
Python for-Schleife mit einem else-Block
Wir können den else-Block mit einer Python for-Schleife verwenden. Der else-Block wird nur ausgeführt, wenn die for-Schleife nicht durch eine break-Anweisung beendet wird.
Lassen Sie uns sagen, wir haben eine Funktion, um die Summe der Zahlen auszudrucken, wenn und nur wenn alle Zahlen gerade sind.
Wir können die break-Anweisung verwenden, um die for-Schleife zu beenden, wenn eine ungerade Zahl vorhanden ist. Wir können die Summe im else-Teil ausdrucken, damit sie nur gedruckt wird, wenn die for-Schleife normal ausgeführt wird.
For-Schleifen mit sequentiellen Datentypen
Listen und andere Datensequenztypen können auch als Iterationsparameter in for
-Schleifen verwendet werden. Anstatt durch einen range()
zu iterieren, können Sie eine Liste definieren und durch diese Liste iterieren.
Wir weisen einer Variablen eine Liste zu und iterieren dann durch die Liste:
In diesem Fall geben wir jedes Element in der Liste aus. Obwohl wir die Variable shark
verwendet haben, hätten wir die Variable auch anders benennen können, und wir würden dieselbe Ausgabe erhalten:
Outputhammerhead
great white
dogfish
frilled
bullhead
requiem
Die obige Ausgabe zeigt, dass die for
-Schleife durch die Liste iteriert ist und jedes Element der Liste pro Zeile ausgedruckt hat.
Listen und andere sequenzbasierte Datentypen wie Zeichenketten und Tupel werden häufig mit Schleifen verwendet, da sie iterierbar sind. Sie können diese Datentypen auch mit range()
kombinieren, um Elemente zu einer Liste hinzuzufügen, zum Beispiel:
Output['hammerhead', 'great white', 'dogfish', 'frilled', 'bullhead', 'requiem', 'shark', 'shark', 'shark', 'shark', 'shark', 'shark']
Hier haben wir für jedes Element der Länge der Liste sharks
einen Platzhalterstring von 'shark'
hinzugefügt.
Sie können auch eine for
-Schleife verwenden, um eine Liste von Grund auf zu erstellen:
In diesem Beispiel wird die Liste integers
leer initialisiert, aber die for
-Schleife füllt die Liste wie folgt:
Output[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
Ähnlich können wir durch Zeichenketten iterieren:
OutputS
a
m
m
y
Das Durchlaufen von Tupeln erfolgt im gleichen Format wie das Durchlaufen von Listen oder Zeichenketten oben.
Beim Durchlaufen eines Wörterbuchs ist es wichtig, sich die Schlüssel-Wert-Struktur vor Augen zu halten, um sicherzustellen, dass Sie das richtige Element des Wörterbuchs aufrufen. Hier ist ein Beispiel, das sowohl den Schlüssel als auch den Wert aufruft:
Outputname: Sammy
animal: shark
location: ocean
color: blue
Beim Verwenden von Wörterbüchern mit for
-Schleifen entspricht die Iterationsvariable den Schlüsseln des Wörterbuchs, und dictionary_variable[iterating_variable]
entspricht den Werten. Im obigen Fall wurde die Iterationsvariable key
verwendet, um für den Schlüssel zu stehen, und sammy_shark[key]
wurde verwendet, um für die Werte zu stehen.
Schleifen werden oft verwendet, um sequenzielle Datentypen zu durchlaufen und zu manipulieren.
Fazit
Die for-Schleife in Python ist sehr ähnlich zu anderen Programmiersprachen. Wir können break- und continue-Anweisungen mit der for-Schleife verwenden, um die Ausführung zu ändern. In Python können wir jedoch optional auch einen else-Block in der for-Schleife haben.
I hope you have gained some interesting ideas from the tutorial above. If you have any questions, let us know in the comments below.
Von hier aus können Sie Ihre Kenntnisse über Schleifen vertiefen, indem Sie Tutorials zu while-Schleifen und break-, continue- und pass-Anweisungen lesen.
Um mit for
-Schleifen in Projekten zu arbeiten, folgen Sie den folgenden Anleitungen:
Source:
https://www.digitalocean.com/community/tutorials/how-to-construct-for-loops-in-python-3