Mikä on Zip- ja UnZip-toiminto Pythonissa?



Tämä artikkeli antaa sinulle yksityiskohtaisen ja kattavan tiedon Pythonin Zip-toiminnosta, miten sitä käytetään ja kuinka puretaan myös.

Oletko koskaan miettinyt, kuinka voimme ottaa yhden elementin kahdesta eri luettelosta, tehdä niistä parin ja laittaa ne uuteen luetteloon? No, tämä käsite on mielenkiintoinen paitsi erittäin hyödyllinen monilla erikoistumisalueilla. Tutustutaan zip-toimintoon Pythonissa seuraavassa järjestyksessä:

Zip-toiminto Pythonissa

Zip-toiminto Pythonissa





zip () -funktio on sisäänrakennettu toiminto, ja se vie minkä tahansa määrän iterableja ja palauttaa luettelon sarjoista. Kahdeksasosa elementti luodaan käyttämällä kunkin iterable-elementin i-elementtiä.

list_A = [1, 2, 3, 4] listB = ['a', 'b', 'c', 'd'] zl = zip (listA, listB) tulosta zl

Tuotos:



[(1, 'a'), (2, 'b'), (3, 'c'), (4, 'd')]

Zip Python 3: ssa

Kun suoritamme yllä olevan koodin Python 3: ssa, emme saa samaa tulosta. Sen sijaan saamme:



Kokeile!

Tämä johtuu siitä, että zip-menetelmät palauttavat zip-objektin luettelon sijaan. Tämä zip-objekti on iteraattori. Toisin sanoen palauttaa yhden iteraattoriobjektin, jolla on kartoitetut arvot kaikista säilöistä. Joten arvojen saamiseksi joko muunnetaan zl (yllä olevasta koodista) luetteloksi, joukoksi tai muuksi.

soita viitteellä c ++ esimerkki
luetteloA = [1, 2, 3, 4] luetteloB = ['a', 'b', 'c', 'd'] zl = zip (luetteloA, luetteloB) zl = luettelo (zl) tulosta (zl)

Tuotos:

[(1, 'a'), (2, 'b'), (3, 'c'), (4, 'd')]

nollaosoittimen poikkeus Java-esimerkkiohjelmassa

Purkaminen Pythonissa

Pakkauksen purkaminen tarkoittaa pakattujen arvojen muuntamista takaisin itsellesi sellaisenaan. Tämä tehdään “*” - operaattorin avulla. Joten nyt, jos haluamme laittaa vanhat arvot listaan ​​A ja listB pakatun luettelon zl kohdalta, meidän on purettava zl.

listA = [1, 2, 3, 4] listB = ['a', 'b', 'c', 'd'] #zip listA ja listB ja laita se yhteen luetteloon zl zl = zip (listA, listB) zl = luettelo (zl) tulosta (zl) #unzip zl ja laita arvot takaisin luetteloonA ja luetteloB luetteloA, luetteloB = zip (* zl) tulosta (luetteloA) tulosta (luetteloB)

Tuotos:

[(1, 'a'), (2, 'b'), (3, 'c'), (4, 'd')]
(1, 2, 3, 4)
('A', 'b', 'c', 'd')

Ymmärrämme eron selkeästi ottamalla kaksi uutta muuttujaa ja asettamalla siihen puretut tiedot.

luetteloA = [1, 2, 3, 4] luetteloB = ['a', 'b', 'c', 'd'] zl = zip (luetteloA, luetteloB) zl = luettelo (zl) tulosta (zl) luetteloC, luetteloD = zip (* zl) tulosta (luetteloC) tulosta (luetteloD) tulosta (luetteloA) tulosta (luetteloB)

Tuotos:

[(1, 'a'), (2, 'b'), (3, 'c'), (4, 'd')]
(1, 2, 3, 4, 5)
('A', 'b', 'c', 'd', 'e')
[1, 2, 3, 4, 5]
[’A’, ’b’, ’c’, ’d’, ‘e’]

Kuten näette, luettelo A ja luettelo B ovat luetteloita ja luettelo C ja luetteloD näytetään joukkoina, jotka näkyvät lähdönä. Se on ainoa pieni ero.

Tämän avulla olemme päässeet tämän Python-artikkelin Zip-toiminnon loppuun. Toivon, että opit käsitteet hyvin ja kokeilet siten tarkempaa.

Onko sinulla kysymys meille? Mainitse se tämän 'Zip Function in Python' -blogin kommenttiosassa ja otamme sinuun yhteyttä mahdollisimman pian.

Voit saada syvällistä tietoa Pythonista sen eri sovellusten kanssa suoralla verkkokoulutuksellamme, joka tarjoaa ympärivuorokautisen tuen ja käyttöiän.