Zip funksiyasi
zip funksiyasi ketma-ketliklar
(ro'yxatlar, tuple'lar, to'plamlar)
elementlarini birlashtiradigan iterator
yaratadi. Funksiya birinchi va ikkinchi
ketma-ketliklarning barcha elementlari
tartib bilan birlashtirilgan iteratorni
qaytaradi. Funksiya parametrida bizni
qiziqtirgan barcha tuple'lar, ro'yxatlar,
to'plamlar va h.k.larni ko'rsatamiz.
Sintaksis
zip(birinchi ketma-ketlik, ikkinchi ketma-ketlik va h.k.z.)
Misol
Keling, zip funksiyasi yordamida ikkita
asosiy tuple asosida yangi tuple yaratamiz:
tlp1 = ('a', 'b', 'c')
tlp2 = (1, 2, 3)
res = zip(tlp1, tlp2)
print(tuple(res))
Kodni bajarish natijasi:
(('a', 1), ('b', 2), ('c', 3))
Misol
Endi esa zip funksiyasi yordamida ikkita
ro'yxat asosida yangi tuple yaratamiz:
lst1 = ['d', 'e', 'f']
lst2 = [4, 5, 6]
res = zip(lst1, lst2)
print(tuple(res))
Kodni bajarish natijasi:
(('d', 4), ('e', 5), ('f', 6))
Misol
Keling, ikkita to'plamdan tuple yaratamiz:
st1 = {'a', 'b', 'c'}
st2 = {'d', 'e', 'f'}
res = zip(st1, st2)
print(tuple(res))
Kodni bajarish natijasi:
(('a', 'd'), ('c', 'e'), ('b', 'f'))
Misol
Endi esa uchta to'plamdan tuple yaratamiz:
st1 = {'a', 'b', 'c'}
st2 = {'d', 'e', 'f'}
st3 = {1, 2, 3}
res = zip(st1, st2, st3)
print(tuple(res))
Kodni bajarish natijasi:
(('c', 'f', 1), ('b', 'd', 2), ('a', 'e', 3))
Misol
zip funksiyasi yordamida bir vaqtning
o'zida bir nechta ob'ektlarni aylantirish
mumkin. Keling, misol uchun uchta ro'yxatni
aylantirib ko'ramiz:
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)
Kodni bajarish natijasi:
1 4 7
2 5 8
3 6 9