Skip to content

enumerate() und zip() zusammen in Python verwenden

Python

In Python sind enumerate() und zip() nützlich, wenn Elemente von Iterable (Liste, Tupel usw.) in einer for-Schleife durchlaufen werden.

Sie können den Index mit enumerate() und die Elemente mehrerer Iterables mit zip() abrufen.

Dieser Artikel die Hinweise zur Verwendung von enumerate() und zip().

Hinweise zur gemeinsamen Verwendung von enumerate() und zip()

Wenn Sie die Elemente mehrerer Listen und Indizes erhalten möchten, können Sie enumerate() und zip() zusammen verwenden.

In diesem Fall müssen SIE die Elemente von zip() in Klammern setzen, wie für i, (a, b, …) in enumerate(zip( … )).

names = ['Alice', 'Bob', 'Charlie']
ages = [24, 50, 18]

for i, (name, age) in enumerate(zip(names, ages)):
    print(i, name, age)
# 0 Alice 24
# 1 Bob 50
# 2 Charlie 18

Sie können die Elemente von zip() auch als Tupel erhalten.

for i, t in enumerate(zip(names, ages)):
    print(i, t)
# 0 ('Alice', 24)
# 1 ('Bob', 50)
# 2 ('Charlie', 18)
for i, t in enumerate(zip(names, ages)):
    print(i, t[0], t[1])
# 0 Alice 24
# 1 Bob 50
# 2 Charlie 18

Beachten Sie, dass die Funktionen count() und zip() des itertools-Moduls der Standardbibliothek used Werden can, um ein nicht verschachteltes Formular wie (i, a, b) zu erstellen.