Python3 enumerate()-Funktion

Python3 内置函数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

# Grundlegende Verwendung von enumerate
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:

  1. enumerate gibt (index, value)-Tupel zurück.
  2. Standardmäßig beginnt der Index bei 0.

Beispiel 2: Startindex angeben

Beispiel

# Nummerierung ab 1 beginnen
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

# In Liste konvertieren
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

# Finde den Index eines Elements
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

# enumerate auf einem Wörterbuch
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.


Python3 内置函数Python3 integrierte Funktionen

Andere Erweiterungen