Functie zip
De functie zip creëert een iterator
die elementen uit sequenties samenvoegt
(lijsten, tuples, sets). De functie
retourneert een iterator waarin alle elementen
van de eerste en tweede sequentie samengevoegd
worden in volgorde. In de parameter van de functie
specificeren we alle tuples, lijsten,
sets, enz. die ons interesseren.
Syntaxis
zip(eerste sequentie, tweede sequentie, etc.)
Voorbeeld
Laten we met behulp van de functie zip een
nieuwe tuple maken op basis van twee originele:
tlp1 = ('a', 'b', 'c')
tlp2 = (1, 2, 3)
res = zip(tlp1, tlp2)
print(tuple(res))
Resultaat van de code-uitvoering:
(('a', 1), ('b', 2), ('c', 3))
Voorbeeld
Laten we nu met behulp van de functie zip
een nieuwe tuple maken op basis van twee lijsten:
lst1 = ['d', 'e', 'f']
lst2 = [4, 5, 6]
res = zip(lst1, lst2)
print(tuple(res))
Resultaat van de code-uitvoering:
(('d', 4), ('e', 5), ('f', 6))
Voorbeeld
Laten we een tuple maken van twee sets:
st1 = {'a', 'b', 'c'}
st2 = {'d', 'e', 'f'}
res = zip(st1, st2)
print(tuple(res))
Resultaat van de code-uitvoering:
(('a', 'd'), ('c', 'e'), ('b', 'f'))
Voorbeeld
Laten we nu een tuple maken van drie sets:
st1 = {'a', 'b', 'c'}
st2 = {'d', 'e', 'f'}
st3 = {1, 2, 3}
res = zip(st1, st2, st3)
print(tuple(res))
Resultaat van de code-uitvoering:
(('c', 'f', 1), ('b', 'd', 2), ('a', 'e', 3))
Voorbeeld
Met de functie zip kun je
meerdere objecten gelijktijdig doorlopen.
Laten we bijvoorbeeld drie lijsten doorlopen:
lst1 = [1, 2, 3]
lst2 = [4, 5, 6]
lst3 = [7, 8, 9]
for el1, el2, el3 in zip(lst1, lst2, lst3):
print(el1, el2, el3)
Resultaat van de code-uitvoering:
1 4 7
2 5 8
3 6 9