Fungsi zip () mengambil iterable (bisa nol atau lebih), menggabungkannya dalam tupel, dan mengembalikannya.
Sintaks zip()
fungsinya adalah:
zip (* iterables)
zip () Parameter
Parameter | Deskripsi |
---|---|
iterables | dapat berupa iterabel bawaan (seperti: list, string, dict), atau iterable yang ditentukan pengguna |
Bacaan yang Direkomendasikan: Python Iterators, __iter__ dan __next__
Nilai Kembali dari zip ()
The zip()
mengembalikan fungsi iterator tupel berdasarkan pada objek iterable.
- Jika kita tidak melewatkan parameter apa pun,
zip()
kembalikan iterator kosong - Jika satu iterable dilewatkan,
zip()
mengembalikan iterator tupel dengan setiap tupel hanya memiliki satu elemen. - Jika beberapa iterabel dilewatkan,
zip()
kembalikan iterator tupel dengan setiap tupel memiliki elemen dari semua iterabel.
Misalkan, dua iterable diteruskan kezip()
; satu iterable berisi tiga dan lainnya berisi lima elemen. Kemudian, iterator yang dikembalikan akan berisi tiga tupel. Itu karena iterator berhenti ketika iterable terpendek habis.
Contoh 1: Python zip ()
number_list = (1, 2, 3) str_list = ('one', 'two', 'three') # No iterables are passed result = zip() # Converting iterator to list result_list = list(result) print(result_list) # Two iterables are passed result = zip(number_list, str_list) # Converting iterator to set result_set = set(result) print(result_set)
Keluaran
() ((2, 'dua'), (3, 'tiga'), (1, 'satu'))
Contoh 2: Jumlah elemen iterable yang berbeda
numbersList = (1, 2, 3) str_list = ('one', 'two') numbers_tuple = ('ONE', 'TWO', 'THREE', 'FOUR') # Notice, the size of numbersList and numbers_tuple is different result = zip(numbersList, numbers_tuple) # Converting to set result_set = set(result) print(result_set) result = zip(numbersList, str_list, numbers_tuple) # Converting to set result_set = set(result) print(result_set)
Keluaran
((2, 'TWO'), (3, 'THREE'), (1, 'ONE')) ((2, 'two', 'TWO'), (1, 'one', 'ONE'))
The * operator dapat digunakan bersama dengan zip()
unzip daftar.
zip (* zippedList)
Contoh 3: Membuka Ritsleting Nilai Menggunakan zip ()
coordinate = ('x', 'y', 'z') value = (3, 4, 5) result = zip(coordinate, value) result_list = list(result) print(result_list) c, v = zip(*result_list) print('c =', c) print('v =', v)
Keluaran
(('x', 3), ('y', 4), ('z', 5)) c = ('x', 'y', 'z') v = (3, 4, 5)