Pythoni zip ()

Funktsioon zip () võtab iterableid (võib olla null või rohkem), liidab need kaheks ja tagastab selle.

Funktsiooni süntaks zip()on:

 zip (* iterable)

zip () parameetrid

Parameeter Kirjeldus
iterables võib olla sisseehitatud iterable (näiteks: list, string, dict) või kasutaja määratud iterable

Soovitatav lugemine: Pythoni iteraatorid, __iter__ ja __next__

Tagastusväärtus alates ZIP-st ()

zip() Tagastab iteraatoris kohta tuples põhineb iterable objektid.

  • Kui me ei edasta ühtegi parameetrit, zip()tagastab tühja iteraatori
  • Kui üks iterable on läbitud, zip()tagastab kordajate kordajate, kusjuures igal dupleksil on ainult üks element.
  • Mitme iterable edastamise korral zip()tagastab kordajate kordaja, kusjuures igal dupleksil on elemente kõigist iterable'idest.
    Oletame, et kaks iterable edastatakse zip(); üks korduv, mis sisaldab kolme ja teine, mis sisaldab viit elementi. Seejärel sisaldab tagastatud iteraator kolme arvu. Selle põhjuseks on see, et iteraator peatub, kui lühim kordatav on ammendatud.

Näide 1: Pythoni 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)

Väljund

 () ((2, "kaks"), (3, "kolm"), (1, "üks"))

Näide 2: erinev arv korduvaid elemente

 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)

Väljund

 ((2, 'KAKS'), (3, KOLM '), (1,' ÜKS ')) ((2,' kaks ',' KAKS '), (1,' üks ',' ÜKS '))

* Operaator saab kasutada koos zip()unzip nimekirja.

 zip (* zippedList)

Näide 3: Väärtuse lahtipakkimine zip () abil

 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)

Väljund

 (('x', 3), ('y', 4), ('z', 5)) c = ('x', 'y', 'z') v = (3, 4, 5) 

Huvitavad Artiklid...