Funksjonen zip
Funksjonen zip oppretter en iterator
som kombinerer elementer fra sekvenser
(lister, tupler, mengder). Funksjonen
returnerer en iterator der alle elementene
fra den første og andre sekvensen slås
sammen i rekkefølge. I funksjonens parameter
angir vi alle tuplene, listene, mengdene
osv. som interesserer oss.
Syntaks
zip(første sekvens, andre sekvens, osv.)
Eksempel
La oss ved hjelp av funksjonen zip lage
en ny tuppel basert på to originale:
tlp1 = ('a', 'b', 'c')
tlp2 = (1, 2, 3)
res = zip(tlp1, tlp2)
print(tuple(res))
Resultat av kjøring av kode:
(('a', 1), ('b', 2), ('c', 3))
Eksempel
Og la oss nå ved hjelp av funksjonen zip
lage en ny tuppel basert på to lister:
lst1 = ['d', 'e', 'f']
lst2 = [4, 5, 6]
res = zip(lst1, lst2)
print(tuple(res))
Resultat av kjøring av kode:
(('d', 4), ('e', 5), ('f', 6))
Eksempel
La oss lage en tuppel fra to mengder:
st1 = {'a', 'b', 'c'}
st2 = {'d', 'e', 'f'}
res = zip(st1, st2)
print(tuple(res))
Resultat av kjøring av kode:
(('a', 'd'), ('c', 'e'), ('b', 'f'))
Eksempel
Og la oss nå lage en tuppel fra tre mengder:
st1 = {'a', 'b', 'c'}
st2 = {'d', 'e', 'f'}
st3 = {1, 2, 3}
res = zip(st1, st2, st3)
print(tuple(res))
Resultat av kjøring av kode:
(('c', 'f', 1), ('b', 'd', 2), ('a', 'e', 3))
Eksempel
Med funksjonen zip kan man
gå gjennom flere objekter samtidig.
La oss for eksempel gå gjennom tre lister:
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)
Resultat av kjøring av kode:
1 4 7
2 5 8
3 6 9