Питхон зип ()

Функција зип () узима итерабле (може бити нула или више), агрегира их у скуп и враћа их.

Синтакса 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) 

Занимљиви Чланци...