Heim >Backend-Entwicklung >Python-Tutorial >Wie iteriere ich in Python parallel durch zwei Listen?
Bei zwei Listen besteht eine häufige Aufgabe darin, sie paarweise zu durchlaufen. Das Iterieren über Indizes ist zwar ein praktikabler Ansatz, aber möglicherweise nicht die pythonischste Lösung.
In Python 3 gibt die Funktion zip() einen Iterator von Tupeln zurück und erstellt so eine effiziente und prägnante Möglichkeit, mehrere Iterables parallel zu durchlaufen. Die Syntax lautet:
for element_1, element_2 in zip(iterable_1, iterable_2): ...
for f, b in zip(foo, bar): print(f, b)
In Python 2 gibt zip() eine Liste von Tupeln zurück, was bei großen Datensätzen ineffizient sein kann. Um die Erstellung unnötiger temporärer Variablen zu vermeiden, sollten Sie stattdessen die Verwendung von itertools.izip() für einen Iterator in Betracht ziehen:
import itertools for f, b in itertools.izip(foo, bar): print(f, b)
Falls gewünscht, kann itertools.izip_longest() zum Iterieren verwendet werden, bis beide Iterables erschöpft sind, wobei fehlende Elemente aufgefüllt werden Werte mit dem angegebenen Füllwert (oder standardmäßig Keine).
Das obige ist der detaillierte Inhalt vonWie iteriere ich in Python parallel durch zwei Listen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!