Sehr häufig ist es beim Programmieren notwendig, einzelne Elemente größerer Mengen an Daten zu manipulieren.
Oder für manche dieser Elemente spezielle Operationen auszuführen, wie zum Beispiel bestimmte Zeilen einer Tabelle auszulesen und diese anzuzeigen.
Das lässt sich am einfachsten mit der Python For Schleife bewerkstelligen, wie genau zeige wir dir im Folgenden.
1. Wie funktioniert eine For-Schleife in Python?
Eine Python For Schleife lässt dich auf jedes einzelne Element einer Sequenz zugreifen. Der Aufbau einer solchen Schleife ist an die natürliche Sprache angelehnt:
for Element in Sequenz: # Code zur Verarbeitung des Elements
2. Beispiele mit Listen und Zeichenketten
Bei Zeichenketten wird jeder Buchstabe dieser einzeln zurückgegeben.
sequenz = 'CodeCitrus' for element in sequenz: print(element)
C o d e C i t r u s
Im Falle dass der Schleife eine Liste zu Grunde liegt, wird jedes einzelne Element dieser zurückgegeben.
sequenz = ['foo', 'bar', 'baz'] for element in sequenz: print(element)
foo bar baz
3. Code ausführen, wenn die Python For Schleife erfolgreich durchlaufen wurde mit for … else
In Python kannst du else verwenden, um Code auszuführen, der nur ausgeführt wird, wenn die Schleife erfolgreich durchlaufen wurde.
sequenz = [1, 2, 3] for element in sequenz: print(element) else: print('Fertig')
Output:
1 2 3 Fertig
Der Code in else wird auch ausgeführt, wenn die Sequenz keine Elemente hat. Nur im Zusammenhang mit break wird else nicht ausgeführt. Zu break später mehr.
4. Zähler in der Python For Schleife erhalten mit enumerate
Mit der eingebauten Funktion enumerate kannst du neben den einzelnen Elementen deiner Sequenz ebenfalls einen Zähler dazu ausgeben, wie hier gezeigt:
sequenz = ['foo', 'bar', 'baz'] for i, item in enumerate(sequenz): print(i, item)
0 foo 1 bar 2 baz
enumerate besitzt weiterhin einen optionalen Parameter, mit dem sich bestimmen lässt, mit welcher Zahl der Zähler beginnt:
for i, element in enumerate(sequenz, 42): print(i, element)
42 foo 43 bar 44 baz
5. Zahlenfolgen mit range
Eine weitere praktische Funktion in Kombination mit for ist range.
Diese gibt eine Zahlenfolge anhand verschiedener Parameter zurück.
range(anfangswert, endwert, schrittgröße)
- anfangswert (optional)
- Gibt die erste Zahl an, die zurückgegeben wird
- Der Standardwert ist 0
- endwert (erforderlich)
- Gibt den Wert an, vor dem die Routine endet
- schrittgröße (optional)
- Gibt an, um wie viel die nächste zurückgegeben Zahl höher sein soll
- Relativ zur vorigen
- Der Standartwert ist 1
Mit einem Parameter
for i in range(3): print(i)
0 1 2
Mit Anfangs- und Endwert
for i in range(0, 10): print(i)
0 1 2 3 4 5 6 7 8 9
range mit Anfangs-, End- und Schrittparametern
for i in range(0, 64, 16): print(i)
0 16 32 48
6. Schleifenablauf ändern mit continue und break
Wenn du deine Schleife beenden möchtest (wenn zum Beispiel eine bestimmte Bedingung eintritt) geht das am einfachsten mit break.
for i in range(0, 64, 16): if i == 32: break print(i)
0 16
Wenn du unter bestimmten Bedingungen das nächste Element der Schleife aufrufen möchtest, statt mit dem aktuellen weiterzuarbeiten, ist das Schlagwort continue behilflich.
for i in range(0, 64, 16): if i == 32: continue print(i)
0 16 48
7. Fazit
Mit der for-Schleife können wir einfach auf einzelne Werte von Sequenzen zugreifen und diese nach Lust und Laune bearbeiten und/oder anzeigen lassen.
Mit den eingebauten Funktionen range und enumerate können wir zudem verschiedene Arten von Zählern verwenden.
Und mit break und continue den Ablauf der Schleife genauer kontrollieren.
Sind noch Fragen offen geblieben? Hast du noch Verbesserungsvorschläge?
Dann schreib uns unten in den Kommentaren.
Das kannst du gerne auch machen, wenn dir der Beitrag gefallen hat.
Du weißt ja ein Lob geht immer gut runter 🙂
Schreibe einen Kommentar