In Python 3 lo zip
incorporato fa lo stesso lavoro di izip
in 2.x (restituisce un generatore anziché un elenco) ma leggermente più veloce in quanto è una funzione incorporata.
Qui è un punto di riferimento tra zip
in Python 2 e 3 e 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 questo caso, poiché zip
Gli argomenti devono supportare l'iterazione non è possibile utilizzare 2 come argomento. Quindi, se si vuole scrivere 2 variabile come una fila CSV li si può mettere in una tupla o una lista:
writer.writerows((variable1,2))
Anche da itertools
è possibile importare zip_longest
come una funzione più flessibile che si può utilizzare su iteratori con diversi dimensione.