La funzione riceve come argomenti delle sequenze (stringhe, tuple, liste, iteratori, …) e restituisce un iteratore alle tuple costituite ordinatamente da un elemento di ognuno degli argomenti.
z1 = (2, 4, 6)
z2 = [101, 102, 103]
z = zip(z1, z2)
print(list(z)) # [(2, 101), (4, 102), (6, 103)]
Lunghezze diverse
Se le sequenze hanno lunghezze diverse l’iteratore termina quando uno degli argomenti termina.
z1 = (2, 4, 6)
z2 = [101, 102, 103]
z3 = "arcobaleno"
z = zip(z1, z2, z3)
print(list(z)) # [(2, 101, 'a'), (4, 102, 'r'), (6, 103, 'c')]
for
La funzione zip() si utilizza nei cicli for per scorrere più sequenze in parallelo
for x1, x2, x3 in zip(z1, z2, z3):
...