Функција зип () узима итерабле (може бити нула или више), агрегира их у скуп и враћа их.
Синтакса zip()
функције је:
зип (* итераблес)
зип () параметри
Параметар | Опис |
---|---|
iterables | могу бити уграђени итераблес (попут: лист, стринг, дицт) или кориснички дефинисани итераблес |
Препоручена литература: Питхон Итераторс, __итер__ и __нект__
Повратна вредност из зип ()
zip()
Функција враћа итератор од торки на основу итерабле објектима.
- Ако не прослиједимо ниједан параметар,
zip()
враћа празан итератор - Ако је прослеђен један итерабил,
zip()
враћа итератор корпица при чему сваки тупле има само један елемент. - Ако је прослеђено више итераблеа,
zip()
враћа итератор корпица при чему сваки тупле има елементе из свих итераблеа.
Претпоставимо, два итераблеа су прослеђенаzip()
; један поновљиви који садржи три, а други који садржи пет елемената. Тада ће враћени итератор садржати три корице. То је зато што се итератор зауставља када се исцрпи најкраћи итерал.
Пример 1: Питхон зип ()
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)
Оутпут
() ((2, „два“), (3, „три“), (1, „један“))
Пример 2: Различит број итерабилних елемената
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)
Оутпут
((2, 'ТВО'), (3, 'ТХРЕЕ'), (1, 'ОНЕ')) ((2, 'тво', 'ТВО'), (1, 'оне', 'ОНЕ'))
* Оператер може да се користи у комбинацији са zip()
да унзип листу.
зип (* зиппедЛист)
Пример 3: Распаковање вредности помоћу зип ()
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)
Оутпут
(('к', 3), ('и', 4), ('з', 5)) ц = ('к', 'и', 'з') в = (3, 4, 5)