- 1 1. Einführung
- 2 2. Grundlagen der for in-Anweisung in Python
- 3 3. for in-Anweisung: Grundlegende Verwendung
- 4 4. Erweiterte Techniken unter Verwendung von for in
- 5 5. Steuerung der for-Schleife
- 6 6. List Comprehension
- 7 7. Häufig gestellte Fragen (FAQ)
- 7.1 Unterschied zwischen for in-Schleife und while-Schleife?
- 7.2 Bei welchen Datentypen kann der in-Operator verwendet werden?
- 7.3 Unterschied zwischen break und continue?
- 7.4 In welchen Situationen verwendet man die for-else-Syntax?
- 7.5 Wie verwendet man einen Zähler in einer for in-Schleife?
- 7.6 Ursachen und Lösungen, wenn die for in-Schleife nicht funktioniert
- 7.7 Zusammenfassung
- 8 8. Zusammenfassung
1. Einführung
Was ist die for in
-Schleife in Python?
Die for in
-Schleife in Python ist eine Syntax, um iterierbare Daten wie Listen, Dictionaries, Strings usw. (wiederholbare Daten) in einer Schleife zu verarbeiten.
In der Programmierung gibt es viele Situationen, in denen man Elemente einer bestimmten Liste nacheinander verarbeitet oder wiederholte Berechnungen durchführt. Durch die Verwendung der for in
-Schleife kann man knappen und lesbaren Code schreiben.
Zum Beispiel kann eine grundlegende Schleife, die Elemente in einer Liste nacheinander abruft und verarbeitet, wie folgt beschrieben werden.
fruits = ["apple", "banana", "cherry"]
for fruit in fruits:
print(fruit)
Ausgabe
apple
banana
cherry
Auf diese Weise kann mit der for in
-Schleife die Elemente der Liste nacheinander extrahiert und in einer Schleife verarbeitet werden.
Zielgruppe dieses Artikels
Dieser Artikel richtet sich an Leser wie die folgenden.
- Python-Anfänger, die die Grundlagen der
for in
-Schleife lernen möchten - Personen, die mit
for in
Listen, Dictionaries, Sets usw. effizient in Schleifen verarbeiten möchten - Personen, die fortgeschrittene Techniken wie
enumerate()
,zip()
und List Comprehensions erlernen möchten
Was man in diesem Artikel lernen kann
Durch das Lesen dieses Artikels können Sie Folgendes verstehen und in der Praxis anwenden.
- Die grundlegende Syntax und der Funktionsmechanismus der
for in
-Schleife - Die Verwendung der
for in
-Schleife mit Listen, Dictionaries, Sets und Tupeln - Methoden zur Schleifensteuerung mit
break
undcontinue
- Die Verwendung und Anwendungen von
enumerate()
undzip()
- Der Mechanismus und praktische Beispiele der
for-else
-Syntax - Effiziente Code-Schreibweise mit List Comprehensions
Durch das gründliche Verständnis der Schleifenverarbeitung in Python und mit konkreten Code-Beispielen wird erklärt, wie man es in der Praxis einsetzen kann.
2. Grundlagen der for in
-Anweisung in Python
for in
-Anweisung: Was ist das?
for in
-Anweisung ist eine der am häufigsten verwendeten Syntaxelemente in den Schleifen von Python.
Von Datentypen wie Listen, Wörterbüchern, Tupeln oder Strings kann sie der Reihe nach Elemente extrahieren und die Verarbeitung wiederholen.
Grundlegende Syntax
for Variable in iterierbares Objekt:
Verarbeitung
Variable
: Variable, die in der Schleife jedes extrahierte Element speichertiterierbares Objekt
: Listen, Wörterbücher, Tupel, Mengen, Strings usw. – iterierbare ObjekteVerarbeitung
: Die in der Schleife auszuführende Verarbeitung
Grundlegende Verwendungsbeispiele
Um die Elemente einer Liste der Reihe nach zu verarbeiten, kann man wie folgt schreiben.
fruits = ["apple", "banana", "cherry"]
for fruit in fruits:
print(fruit)
Ausgabe
apple
banana
cherry
In dieser Weise werden die einzelnen Elemente der Liste fruits
nacheinander in die Variable fruit
zugewiesen und die Verarbeitung in der Schleife ausgeführt.
Die Rolle des in
-Operators
Der in
-Operator in Python wird verwendet, um zu überprüfen, ob ein bestimmtes Element in einer Liste, einem Wörterbuch oder einem String enthalten ist.
Durch die Kombination mit einer for
-Schleife kann man die einzelnen Elemente der Daten nacheinander abrufen und verarbeiten.
Verwendung des in
-Operators in Listen
numbers = [1, 2, 3, 4, 5]
if 3 in numbers:
print("3 ist in der Liste enthalten")
Ausgabe
3 ist in der Liste enthalten
Verwendung des in
-Operators in Wörterbüchern
Im Fall von Wörterbüchern (dict
-Typ) sucht der in
-Operator standardmäßig nach Schlüsseln (keys).
person = {"name": "Alice", "age": 25, "city": "Tokyo"}
if "age" in person:
print("Der Schlüssel age existiert")
Ausgabe
Der Schlüssel age existiert
Außerdem, wenn man nach den Werten (values) des Wörterbuchs suchen möchte, verwendet man .values()
.
if 25 in person.values():
print("Der Wert 25 existiert")
Ausgabe
Der Wert 25 existiert
Negationsbedingungen mit not in
Mit not in
kann man Bedingungen für den Fall angeben, dass ein Element nicht vorhanden ist.
if "email" not in person:
print("Der Schlüssel email existiert nicht")
Ausgabe
Der Schlüssel email existiert nicht
Vorteile der for in
-Anweisung
Die for in
-Anweisung in Python hat folgende Vorteile.
✅Hohe LesbarkeitBeim Umgang mit Daten wie Listen oder Wörterbüchern kann man einfachen und verständlichen Code schreiben.
✅Indexfehler treten selten aufIm Gegensatz zu normalen for
-Schleifen muss man keinen Zähler verwalten, sodass Fehler durch Überschreitung des Array-Bereichs unwahrscheinlich sind.
✅Iterierbare Daten können einfach gehandhabt werdenListen, Wörterbücher, Tupel, Mengen, Strings usw. – anwendbar auf verschiedene Datenstrukturen.
Zusammenfassung
In diesem Kapitel haben wir die Grundlagen der for in
-Anweisung in Python gelernt.Zusammenfassung der Punkte
- Die
for in
-Anweisung ist eine Syntax zur Schleifenverarbeitung iterierbarer Daten wie Listen oder Wörterbücher - Mit dem
in
-Operator kann man einfach überprüfen, ob ein Element enthalten ist - Mit
not in
kann man Bedingungen für den Fall setzen, dass ein Element nicht enthalten ist - Mit der
for in
-Anweisung kann man lesbaren und einfachen Code schreiben
3. for in
-Anweisung: Grundlegende Verwendung
Die for in
-Anweisung in Python ist ein nützliches Werkzeug, um Datenstrukturen wie Listen, Dictionaries, Tupel, Sets usw. zu iterieren.
Dieses Kapitel erklärt die grundlegende Verwendung der for in
-Anweisung im Detail und führt konkrete Code-Beispiele für jeden Datentyp ein.
Listen mit for in
durchlaufen
Die Liste (list
-Typ) ist eine der am häufigsten verwendeten Datenstrukturen in Python. Durch die Verwendung der for in
-Anweisung können die Elemente in der Liste der Reihe nach abgerufen und verarbeitet werden.
Grundlegende Durchlaufverarbeitung einer Liste
fruits = ["apple", "banana", "cherry"]
for fruit in fruits:
print(fruit)
Ausgabe
apple
banana
cherry
Methode zum Abrufen des Index einer Liste (enumerate()
)
Im normalen for in
-Loop werden nur die Elemente der Liste abgerufen, aber wenn auch der Index des Elements gleichzeitig abgerufen werden soll, ist die enumerate()
-Funktion bequem zu verwenden.
fruits = ["apple", "banana", "cherry"]
for index, fruit in enumerate(fruits):
print(f"{index}: {fruit}")
Ausgabe
0: apple
1: banana
2: cherry
Dictionaries durchlaufen
Das Dictionary (dict
-Typ) ist eine Datenstruktur, die Schlüssel-Wert-Paare speichert. Mit der for in
-Anweisung können Schlüssel oder Werte der Reihe nach extrahiert werden.
Schlüssel eines Dictionaries durchlaufen
Standardmäßig erhält man bei Anwendung der for in
-Anweisung auf ein Dictionary nur die Schlüssel (key).
person = {"name": "Alice", "age": 25, "city": "Tokyo"}
for key in person:
print(key)
Ausgabe
name
age
city
Schlüssel und Werte eines Dictionaries abrufen (items()
)
Wenn nicht nur der Schlüssel, sondern auch der Wert (value) gleichzeitig abgerufen werden soll, wird die .items()
-Methode verwendet.
for key, value in person.items():
print(f"{key}: {value}")
Ausgabe
name: Alice
age: 25
city: Tokyo
Tupel und Sets durchlaufen
Die for in
-Anweisung in Python kann auch auf Tupel (tuple
-Typ) und Sets (set
-Typ) angewendet werden.
Tupel durchlaufen
Ein Tupel ähnelt einer Liste, ist aber eine unveränderliche (immutable) Datenstruktur.
Es kann wie eine Liste mit der for in
-Anweisung durchlaufen werden.
colors = ("red", "green", "blue")
for color in colors:
print(color)
Ausgabe
red
green
blue
Sets durchlaufen
Das Set (set
-Typ) ist eine Datenstruktur, die duplikatfreie Daten speichert. Da die Elemente eines Sets keine garantierte Reihenfolge haben, kann die Reihenfolge im Loop variieren.
unique_numbers = {1, 2, 3, 4, 5}
for num in unique_numbers:
print(num)
Ausgabe (Reihenfolge nicht garantiert)
1
3
2
5
4
Zeichenketten durchlaufen
Die String (str
-Typ) in Python kann ebenfalls mit der for in
-Anweisung Zeichen für Zeichen verarbeitet werden.
word = "Python"
for char in word:
print(char)
Ausgabe
P
y
t
h
o
n
Verschachtelte for
-Loops (verschachtelte Loops)
for
-Loop innerhalb eines weiteren for
-Loops zu platzieren ist möglich.
Dies wird als verschachtelte Loop (nested loop) bezeichnet.
Zum Beispiel kann es bei der Verarbeitung von Matrizen (2D-Listen) genutzt werden.
matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
for row in matrix:
for num in row:
print(num, end=" ")
print() # Zeilenumbruch
Ausgabe
1 2 3
4 5 6
7 8 9
Zusammenfassung
In diesem Kapitel haben wir gelernt, wie man mit der for in
-Anweisung Listen, Dictionaries, Tupel, Sets und Strings durchläuft. Zusammenfassung der Punkte
- Listen durchlaufen: Mit
enumerate()
kann der Index ebenfalls abgerufen werden - Dictionary durchlaufen: Mit
.items()
können Schlüssel und Werte gleichzeitig abgerufen werden - Tupel und Sets können ebenfalls mit
for in
iteriert werden (allerdings ist die Reihenfolge bei Sets nicht garantiert) - Zeichenfolgen durchlaufen: Ermöglicht das Abrufen einzelner Zeichen
- Nested
for
-Schleifen ermöglichen die Verarbeitung mehrdimensionaler Daten (z. B. Listen von Listen)
4. Erweiterte Techniken unter Verwendung von for in
Neben der bislang erlernten grundlegenden Verwendung der for in
-Anweisung bietet Python verschiedene Techniken, um for in
-Anweisungen noch bequemer und effektiver zu nutzen.
Dieses Kapitel stellt anwendungsbezogene Methoden der Schleifenverarbeitung vor, die Funktionen wie range()
, zip()
und enumerate()
verwenden.
Schleifen mit range()
Mit der range()
-Funktion in Python können Sie einen numerischen Bereich angeben und eine Schleife ausführen. range()
kann wie eine Liste behandelt werden, ist jedoch ein iterierbares Objekt, das Speicher spart.
Grundlegende Verwendung von range()
for i in range(5):
print(i)
Ausgabe
0
1
2
3
4
Standardmäßig erzeugt range(n)
aufeinanderfolgende Ganzzahlen von 0 bis n-1
.
Angeben von Startwert, Endwert und Schritt
Im Format range(start, stop, step)
können Startwert, Endwert und Schritt (Inkrement) angegeben werden.
for i in range(1, 10, 2):
print(i)
Ausgabe
1
3
5
7
9
Umgekehrte Schleife mit range()
Durch Angabe eines negativen Schritts ist eine umgekehrte Schleife möglich.
for i in range(10, 0, -2):
print(i)
Ausgabe
10
8
6
4
2
Simultane Schleife über mehrere Listen mit zip()
Wenn Sie mehrere Listen gleichzeitig durchlaufen möchten, ist die zip()
-Funktion sehr nützlich.
Grundlegende Verwendung von zip()
names = ["Alice", "Bob", "Charlie"]
ages = [25, 30, 35]
for name, age in zip(names, ages):
print(f"{name} ist {age} Jahre alt")
Ausgabe
Alice ist 25 Jahre alt
Bob ist 30 Jahre alt
Charlie ist 35 Jahre alt
Bei unterschiedlichen Listenlängen
Bei unterschiedlichen Listenlängen beendet zip()
die Schleife entsprechend der kürzesten Liste.
names = ["Alice", "Bob"]
ages = [25, 30, 35]
for name, age in zip(names, ages):
print(f"{name} ist {age} Jahre alt")
Ausgabe
Alice ist 25 Jahre alt
Bob ist 30 Jahre alt
Erhalten des Index mit enumerate()
Wenn Sie die Elemente einer Liste zusammen mit dem Index (Nummer) erhalten möchten, ist enumerate()
sehr nützlich.
Grundlegende Verwendung von enumerate()
fruits = ["apple", "banana", "cherry"]
for index, fruit in enumerate(fruits):
print(f"{index}: {fruit}")
Ausgabe
0: apple
1: banana
2: cherry
Angeben der Startnummer
Mit dem zweiten Argument von enumerate()
können Sie die Startnummer angeben und so von einer gewünschten Nummer aus zählen.
for index, fruit in enumerate(fruits, start=1):
print(f"{index}: {fruit}")
Ausgabe
1: apple
2: banana
3: cherry
Verwendung verschachtelter for
-Schleifen
Durch Verschachtelung (Nesting) von for
-Schleifen kann eine doppelte Schleife realisiert werden.
Zum Beispiel kann sie beim Verarbeiten von Matrizen (zweidimensionale Listen) verwendet werden.
Verarbeitung von Matrizen mit doppelter Schleife
matrix = [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9]
]
for row in matrix:
for num in row:
print(num, end=" ")
print() # Zeilenumbruch
Ausgabe
1 2 3
4 5 6
7 8 9
Schleifenverarbeitung mit Sortierung der Liste unter Verwendung von sorted()
Wenn Sie eine Liste sortieren und gleichzeitig durchlaufen möchten, verwenden Sie sorted()
.
numbers = [5, 3, 8, 1, 2]
for num in sorted(numbers):
print(num)
Ausgabe
1
2
3
5
8
Sortierung in umgekehrter Reihenfolge (absteigend)
for num in sorted(numbers, reverse=True):
print(num)
Ausgabe
8
5
3
2
1
Zusammenfassung
In diesem Kapitel wurden nützliche Techniken zur Verwendung der for in
-Anweisung vorgestellt.Zusammenfassung der Punkte
- Mit
range()
können Sie in einem angegebenen numerischen Bereich schleifen range(start, stop, step)
angeben, um Zunahme und Abnahme zu steuern- Mit
zip()
können mehrere Listen gleichzeitig durchlaufen werden - Auf den Punkt achten, dass die Schleife mit der kürzesten Liste endet
- Mit
enumerate()
kann mit Index durchlaufen werden enumerate(liste, start=nummer)
zum Angeben der Startnummer möglich- Mit verschachtelten
for
-Schleifen können multidimensionale Listen verarbeitet werden - Mit
sorted()
kann die Liste sortiert durchlaufen werden
Durch die Nutzung dieser Techniken wird eine flexiblere und effizientere Schleifenverarbeitung möglich.

5. Steuerung der for
-Schleife
Python-for in
-Anweisung ermöglicht es durch die Verwendung von break
oder continue
und ähnlichen Steuerungsanweisungen, das Verhalten der Schleife detailliert zu kontrollieren.
Dieses Kapitel erklärt detailliert die Methoden zur Steuerung des Ablaufs der Schleife.
Unterschiede zwischen break
und continue
break
und continue
sind Steuerungsanweisungen zum Unterbrechen oder Überspringen der Schleifenverarbeitung.
Steuerungsanweisung | Beschreibung |
---|---|
break | beendet die Schleife vollständig |
continue | überspringt die Verarbeitung des aktuellen Durchlaufs und geht zur nächsten Schleife über |
Die Schleife mit break
vorzeitig beenden
break können Sie die Schleife erzwingen, sobald die angegebene Bedingung erfüllt ist.
numbers = [1, 2, 3, 4, 5]
for num in numbers:
if num == 3:
print("3 wurde gefunden, daher Schleife beenden")
break
print(num)
Ausgabe
1
2
3 wurde gefunden, daher Schleife beenden
Spezifische Verarbeitung mit continue
überspringen
Mit continue
überspringen Sie die aktuelle Verarbeitung der Schleife und gehen zur nächsten Iteration über.
numbers = [1, 2, 3, 4, 5]
for num in numbers:
if num == 3:
print("3 wurde übersprungen")
continue
print(num)
Ausgabe
1
2
3 wurde übersprungen
4
5
Verwendung der for-else
-Syntax
Die Python-for
-Schleife bietet die Funktion, durch Hinzufügen eines else
-Blocks eine Verarbeitung auszuführen, falls eine bestimmte Bedingung nicht auftritt.
Grundlegende Verwendung von for-else
numbers = [1, 2, 3, 4, 5]
for num in numbers:
if num == 6:
print("6 wurde gefunden!")
break
else:
print("6 ist nicht in der Liste enthalten")
Ausgabe
6 ist nicht in der Liste enthalten
In diesem Code wird, da 6
nicht in der Liste vorhanden ist, die for
-Schleife bis zum Ende ausgeführt und die else
-Verarbeitung durchgeführt.
Nichts tun mit pass
pass
wird verwendet, wenn syntaktisch eine Verarbeitung erforderlich ist, aber keine spezifische Ausführung vorliegt.
for num in range(1, 6):
if num == 3:
pass # nichts tun
else:
print(num)
Ausgabe
1
2
4
5
In diesem Code wird bei num == 3
keine Verarbeitung ausgeführt und zur nächsten Schleife übergegangen.
Zusammenfassung
In diesem Kapitel haben wir die Methoden zur Steuerung der Python-for in
-Anweisung gelernt.Zusammenfassung der Punkte
- Mit
break
können Sie die Schleife vorzeitig beenden - Mit
continue
können Sie spezifische Verarbeitung überspringen und zur nächsten Schleife übergehen - Mit
for-else
können Sie Verarbeitung nur ausführen, wenn die Schleife normal abgeschlossen wird pass
wird verwendet, um nichts zu tun, aber syntaktisch notwendig zu sein
Durch die Nutzung dieser Steuerungsanweisungen wird flexible Schleifenverarbeitung möglich.
6. List Comprehension
Python bietet als Methode, um die Erstellung von Listen mit for
-Schleifen knapp zu beschreiben, die List Comprehension.
Sie ist lesbarer als normale for
-Schleifen und verbessert oft die Verarbeitungsgeschwindigkeit, weshalb sie eine der am häufigsten genutzten Techniken in Python ist.
Was ist eine List Comprehension?
Die List Comprehension ist eine Syntax, um Listen knapp zu erstellen.
Im Vergleich zur Erstellung von Listen mit normalen for
-Schleifen ermöglicht sie kompakteren Code.
Grundlegende Syntax
[Ausdruck for Variable in iterierbarem Objekt]
Ausdruck
: Die auf jedes Element anzuwendende Verarbeitung (Umwandlung, Berechnung usw.)Variable
: Das Element, das aus dem iterierbaren Objekt entnommen wirditerierbares Objekt
: Listen, Dictionaries, Mengen, Strings usw., also wiederholbare Objekte
Listen-Erstellung mit normaler for
-Schleife
numbers = [1, 2, 3, 4, 5]
squared_numbers = []
for num in numbers:
squared_numbers.append(num ** 2)
print(squared_numbers)
Ausgabe
[1, 4, 9, 16, 25]
Mit List Comprehension
numbers = [1, 2, 3, 4, 5]
squared_numbers = [num ** 2 for num in numbers]
print(squared_numbers)
Ausgabe
[1, 4, 9, 16, 25]
Bedingte List Comprehension
In der List Comprehension können Sie durch Hinzufügen von if
nur Elemente, die eine Bedingung erfüllen, zur Liste hinzufügen.
Nur gerade Zahlen extrahieren
numbers = [1, 2, 3, 4, 5, 6]
even_numbers = [num for num in numbers if num % 2 == 0]
print(even_numbers)
Ausgabe
[2, 4, 6]
Ungerade Zahlen verdoppeln und Liste erstellen
numbers = [1, 2, 3, 4, 5, 6]
double_odd_numbers = [num * 2 for num in numbers if num % 2 == 1]
print(double_odd_numbers)
Ausgabe
[2, 6, 10]
List Comprehension mit if-else
Mit if-else
in der List Comprehension können Sie unterschiedliche Verarbeitungen je nach Bedingung ausführen.
Ungerade Zahlen verdoppeln, gerade Zahlen unverändert lassen
numbers = [1, 2, 3, 4, 5, 6]
modified_numbers = [num * 2 if num % 2 == 1 else num for num in numbers]
print(modified_numbers)
Ausgabe
[2, 2, 6, 4, 10, 6]
Nestete List Comprehension
Die List Comprehension unterstützt auch Nestung, sodass Sie doppelte Schleifen knapp schreiben können.
Doppelte Schleife mit List Comprehension
matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
flattened = [num for row in matrix for num in row]
print(flattened)
Ausgabe
[1, 2, 3, 4, 5, 6, 7, 8, 9]
Dictionary Comprehension
Ähnlich wie bei der List Comprehension können Sie auch Dictionaries (dict
) mit Comprehension erstellen.
Dictionary aus Liste erstellen
numbers = [1, 2, 3, 4, 5]
squared_dict = {num: num ** 2 for num in numbers}
print(squared_dict)
Ausgabe
{1: 1, 2: 4, 3: 9, 4: 16, 5: 25}
Zusammenfassung
In diesem Kapitel haben wir die Grundlagen und Anwendungen der List Comprehension gelernt.Zusammenfassung der Punkte
- Mit List Comprehension können einfache Listenoperationen kurz beschrieben werden
- Mit
if
können bedingte Listen erstellt werden - Mit
if-else
können unterschiedliche Verarbeitungen je nach Bedingung angewendet werden - Nestete Schleifen können auch mit List Comprehension knapp geschrieben werden
- Dictionary Comprehension ist ebenfalls möglich
7. Häufig gestellte Fragen (FAQ)
Die for in
-Schleife in Python ist eine einfache und mächtige Syntax, aber es gibt viele Punkte, an denen Anfänger stolpern.
Dieses Kapitel stellt häufig gestellte Fragen zur for in
-Schleife und deren Lösungen vor.
Unterschied zwischen for in
-Schleife und while
-Schleife?
In Python gibt es zwei Arten von Schleifenkonstrukten zur Durchführung von Schleifen: die for in
-Schleife und die while
-Schleife.
Art der Schleife | Merkmale |
---|---|
for in | Feste Anzahl von Wiederholungen wiederholt die Schleife |
while | Bis eine bestimmte Bedingung erfüllt ist Schleife |
Beispiel für for in
-Schleife (feste Anzahl von Wiederholungen)
for i in range(5):
print(i)
Ausgabe
0
1
2
3
4
✅Die for in
-Schleife eignet sich für Fälle mit fester Wiederholungsanzahl
Beispiel für while
-Schleife (Ausführung bis Bedingung erfüllt)
count = 0
while count < 5:
print(count)
count += 1
Ausgabe
0
1
2
3
4
✅Die while
-Schleife eignet sich, wenn man wiederholen möchte, bis eine Bedingung erfüllt ist
Bei welchen Datentypen kann der in
-Operator verwendet werden?
Der in
-Operator in Python kann bei den folgenden iterierbaren Datentypen (iterierbare Objekte) verwendet werden.
Datentyp | Verwendung in for in -Schleife |
---|---|
Liste (list) | ✅ möglich |
Tupel (tuple) | ✅ möglich |
Dictionary (dict) | ✅ möglich (Schlüssel betroffen) |
Menge (set) | ✅ möglich |
String (str) | ✅ möglich |
Unterschied zwischen break
und continue
?
Steuerungsanweisung | Rolle |
---|---|
break | Beendet die Schleife vollständig |
continue | Überspringt die aktuelle Verarbeitung und geht zur nächsten Schleife |
In welchen Situationen verwendet man die for-else
-Syntax?
Die for-else
-Syntax wird so verwendet, dass der else
-Block nur ausgeführt wird, wenn die Schleife ohne break
bis zum Ende durchlaufen wird.
Grundlegende Verwendung von for-else
numbers = [1, 2, 3, 4, 5]
for num in numbers:
if num == 6:
print("6 wurde gefunden!")
break
else:
print("6 ist nicht in der Liste enthalten")
Ausgabe
6 ist nicht in der Liste enthalten
✅Praktisch zur Überprüfung, ob ein bestimmtes Element in der Liste vorhanden ist
Wie verwendet man einen Zähler in einer for in
-Schleife?
Wenn man den Zähler der Schleife manuell verwalten möchte, ist enumerate()
sehr nützlich.
Methode mit enumerate()
fruits = ["Apfel", "Banane", "Kirsche"]
for index, fruit in enumerate(fruits):
print(f"{index}: {fruit}")
✅Mit enumerate()
muss der Zählervariable nicht explizit verwaltet werden
Ursachen und Lösungen, wenn die for in
-Schleife nicht funktioniert
✅Mögliche Ursachen
- Kein iterierbares Objekt verwendet
num = 10 for n in num: # TypeError print(n)
Lösung:num
ist eine Ganzzahl und nicht iterierbar. Verwenden Sierange()
.for n in range(num): print(n)
- Die Liste ist leer
items = [] for item in items: print(item) # nichts wird ausgegeben
Lösung: Überprüfen Sie im Voraus, ob die Liste Elemente enthält.
Zusammenfassung
In diesem Kapitel haben wir häufig gestellte Fragen zur for in
-Schleife in Python und deren Lösungen vorgestellt.
✅Wichtige Punkte
- Unterschied zwischen
for
undwhile
: Für feste Anzahl von Wiederholungenfor
, für bedingte Wiederholungenwhile
break
beendet die Schleife,continue
überspringtfor-else
wird nur ausgeführt, wenn die Schleife normal endet- Mit
enumerate()
kann der Schleifenindex einfach abgerufen werden
8. Zusammenfassung
In diesem Artikel haben wir die Python-for in
-Schleife von den Grundlagen bis zu fortgeschrittenen Themen umfassend erläutert.
Dieses Kapitel fasst den bisher gelernten Inhalt zusammen und ordnet die wichtigen Punkte.
Grundlagen der for in
-Schleife
- Die
for in
-Schleife ist eine Syntax zur Durchlaufung iterierbarer Daten wie Listen, Wörterbücher, Tupel, Mengen und Strings - Grundlegende Syntax
for Variable in iterierbaresObjekt: Verarbeitung
- Listen durchlaufen
fruits = ["apple", "banana", "cherry"] for fruit in fruits: print(fruit)
Fortgeschrittene Techniken für for in
✅Schleife mit range()
for i in range(5):
print(i) # 0, 1, 2, 3, 4
✅Gleichzeitige Schleife mehrerer Listen mit zip()
names = ["Alice", "Bob", "Charlie"]
ages = [25, 30, 35]
for name, age in zip(names, ages):
print(f"{name} is {age} years old")
✅Indizes mit enumerate()
abrufen
fruits = ["apple", "banana", "cherry"]
for index, fruit in enumerate(fruits, start=1):
print(f"{index}: {fruit}")
✅Listen sortiert durchlaufen
numbers = [5, 3, 8, 1, 2]
for num in sorted(numbers):
print(num)
Kontrolle der Schleifen
✅break
zur vorzeitigen Beendigung der Schleife
for num in range(1, 6):
if num == 3:
break
print(num)
✅continue
zum Überspringen bestimmter Verarbeitungen
for num in range(1, 6):
if num == 3:
continue
print(num)
✅for-else
nutzen
for num in range(1, 6):
if num == 7:
break
else:
print("7 wurde nicht gefunden")
Schleifen mit List Comprehension
✅Normale for
-Schleife
numbers = [1, 2, 3, 4, 5]
squared_numbers = []
for num in numbers:
squared_numbers.append(num ** 2)
✅Mit List Comprehension kompakt schreiben
squared_numbers = [num ** 2 for num in numbers]
✅Bedingte List Comprehension
even_numbers = [num for num in numbers if num % 2 == 0]
✅Dictionary Comprehension
squared_dict = {num: num ** 2 for num in numbers}
Häufige Fehler und Lösungen für die for in
-Schleife
✅Integers können nicht direkt durchlaufen werden
num = 10
for i in num: # Fehler
print(i)
➡Lösung
for i in range(num):
print(i)
✅Der in
-Operator für Dictionaries zielt standardmäßig auf Keys ab
person = {"name": "Alice", "age": 25}
if "Alice" in person: # Sucht nach Keys, daher False
print("Existiert")
➡Lösung: Um Werte zu targeten, verwenden Sie .values()
if "Alice" in person.values():
print("Existiert")
Ressourcen für weiteres Lernen
Um die Python-for in
-Schleife tiefer zu lernen, sollten Sie die folgenden Ressourcen konsultieren.
- Python offizielle Dokumentation
https://docs.python.org/3/tutorial/controlflow.html - Online Python Übungsseiten
- LeetCode (Python-Aufgabensammlung)
- AtCoder (Wettbewerbsprogrammierung)
Zusammenfassung und Punkte für zukünftiges Lernen
In diesem Artikel haben wir die Python-for in
-Schleife von den Grundlagen über Anwendungen, Kontrollmethoden, List Comprehensions bis zu häufigen Fragen umfassend erläutert.
✅Das Verständnis der for in
-Schleife macht die grundlegende Datenverarbeitung in Python reibungslos!✅Mit List Comprehensions, zip()
und enumerate()
können Sie effizienteren Code schreiben!✅Um Fehler zu vermeiden, meistern Sie Kontrollmethoden wie break
, continue
und for-else
!Für zukünftiges Lernen lernen Sie fortgeschrittene Schleifenverarbeitung wie while
-Schleifen, Rekursionsfunktionen und Generatoren (yield
), um Python tiefer zu verstehen.
Nutzen Sie die Schleifenverarbeitung in Python, um effizienten und lesbaren Code zu schreiben!