In Python 3 macht der eingebaute zip
den gleichen Job wie izip
in 2.x (gibt einen Generator statt einer Liste zurück), aber etwas schneller, da es eine eingebaute Funktion ist.
Hier ist ein Benchmark zwischen zip
in Python 2 und 3 und izip
in Python 2:
Python 2.7:
In [5]: %timeit list(izip(range(100), range(100)))
100000 loops, best of 3: 5.16 µs per loop
In [6]: %timeit zip(range(100), range(100))
100000 loops, best of 3: 3.87 µs per loop
Python 3:
In [2]: %timeit list(zip(range(100), range(100)))
100000 loops, best of 3: 3.84 µs per loop
In diesem Fall, da zip
Die Argumente müssen die Iteration unterstützen. Sie können nicht 2 als Argument verwenden. Also, wenn Sie zwei Variable als CSV-Zeile schreiben möchten, können Sie sie in einem Tupel oder Liste gesetzt:
writer.writerows((variable1,2))
Auch von itertools
Sie zip_longest
als flexibler Funktion importieren können, die Sie auf Iteratoren mit unterschiedlichen verwenden können Größe.