Python3 enumerate()-Funktion
Python3 integrierte Funktionen
enumerate()ist eine integrierte Funktion in Python, mit der sowohl der Index als auch der Wert beim Iterieren über ein iterierbares Objekt abgerufen werden können.
Nutzungenumerate()Sie ermöglicht es Ihnen, gleichzeitig sowohl den Index (die Position) als auch das Element selbst bequem abzurufen, wodurch die Verwendung einer zusätzlichen Zählervariable vermieden wird.
Worterklärung: enumerateBedeutet "enumerate", was für das Auflisten nacheinander steht.
Grundlegende Syntax und Parameter
Syntaxformat
enumerate(iterable, start=0)
Parameterbeschreibung
- Parameter iterable:
- Typ: Iterierbares Objekt
- Beschreibung: Das iterierbare Objekt, das aufgezählt werden soll.
- Parameter start(Optional):
- Typ: Ganzzahl
- Beschreibung: Der Startwert des Index, standardmäßig 0.
Funktionsbeschreibung
- Rückgabewert: Gibt ein enumerate-Objekt (Iterator) zurück.
- Ausgabe: Jede Iteration gibt ein Tupel (index, value) zurück.
Beispiele
Beispiel 1: Grundlegende Verwendung
Beispiel
fruits = ["apple", "banana", "orange"]
# Index und Wert abrufen
for index, fruit in enumerate(fruits):
print(f"{index}: {fruit}")
# Standard beginnt bei 0
print("---")
for index, fruit in enumerate(fruits):
print(fruit)
Erwartete Ausgabe:
0: 苹果 1: 香蕉 2: 橙子 --- 0: 苹果 1: 香蕉 2: 橙子
Code-Erklärung:
- enumerate gibt (index, value)-Tupel zurück.
- Standardmäßig beginnt der Index bei 0.
Beispiel 2: Startindex angeben
Beispiel
fruits = ["apple", "banana", "orange"]
for i, fruit in enumerate(fruits, start=1):
print(f"Fruit {i}: {fruit}")
# Bei 10 beginnen
print("---")
for i, fruit in enumerate(fruits, start=10):
print(f"Index {i}: {fruit}")
Erwartete Ausgabe:
第1个水果: 苹果 第2个水果: 香蕉 第3个水果: 橙子 --- 索引 10: 苹果 索引 11: 香蕉 索引 12: 橙子
Der Parameter start kann den Startindex angeben.
Beispiel 3: In Liste umwandeln
Beispiel
fruits = ["apple", "banana", "orange"]
result = list(enumerate(fruits))
print(result) # Ausgabe: [(0, 'apple'), (1, 'banana'), (2, 'orange')]
# In Dictionary umwandeln (wenn die Werte Strings sind)
result = dict(enumerate(fruits))
print(result) # Ausgabe: {0: 'apple', 1: 'banana', 2: 'orange'}
# Mit Listen-Komprehension
squares = [x**2 for x in range(5)]
indexed_squares = [(i, v) for i, v in enumerate(squares)]
print(indexed_squares) # Ausgabe: [(0, 0), (1, 1), (2, 4), (3, 9), (4, 16)]
Erwartete Ausgabe:
enumerate kann leicht in eine Liste oder ein Dictionary umgewandelt werden.
Beispiel 4: Praktische Anwendung
Beispiel
fruits = ["apple", "banana", "orange", "banana", "apple"]
target = "banana"
for index, fruit in enumerate(fruits):
if fruit == target:
print(f"{target} bei Index {index} gefunden")
break
# Alle Übereinstimmungen mit einer Bedingung finden
print("\n"Positionen aller Bananen:")
for index, fruit in enumerate(fruits):
if fruit == "banana":
print(index, end=" ") # Ausgabe: 1 3
# Zeichenpositionen in einer Zeichenkette finden
text = "hello"
for i, c in enumerate(text):
print(f"'{c}' befindet sich an Position {i}")
Erwartete Ausgabe:
enumerate wird häufig in Szenarien verwendet, die Indizes erfordern, wie Suchen, Ersetzen usw.
Beispiel 5: Arbeiten mit Wörterbüchern
Beispiel
person = {"name": "Tom", "age": 20, "city": "Beijing"}
# Über Schlüssel-Wert-Paare eines Wörterbuchs iterieren (erfordert items)
for index, (key, value) in enumerate(person.items()):
print(f"{index}: {key} = {value}")
# Erstellen Sie ein Wörterbuch mit Sequenznummern
items = ["a", "b", "c"]
numbered = {i+1: v for i, v in enumerate(items)}
print(numbered) # Ausgabe: {1: 'a', 2: 'b', 3: 'c'}
Erwartete Ausgabe:
Wenn Sie enumerate mit einem Wörterbuch verwenden, müssen Sie die Methode items() verwenden.
Andere Erweiterungen