Python

Vadnica za Python Pickle

Vadnica za Python Pickle

Razvijalci Pythona želijo podatkovne predmete, kot so seznami, slovarji, nabori in razredi, shraniti v datoteko. V tej situaciji pride v poštev modul kumarice Python.

Pickle je vgrajeni modul Python, ki se uporablja za serializacijo in deserializacijo strukture objekta Python. Serializacija je postopek pretvorbe predmeta Python v bajtni tok (0 in 1). Znano je tudi kot kisanje. Namen postopka luženja je shraniti objekt Python na disk v obliki bajtnega toka. Vloženi objekt Python je mogoče pretvoriti nazaj v objekt Python, ta postopek pa je znan kot odstranjevanje ali dezerizacija.

Dekapiranje Pythona je uporabno, kadar moramo shraniti stanje predmeta Python in opraviti nalogo analize podatkov. Na primer, ko delamo z algoritmi za poglobljeno učenje in ga želimo uporabiti pozneje. V tem stanju ga lahko shranimo na disk za kasnejšo uporabo. Vendar kisanje ni dobra možnost, če delamo z različnimi programskimi jeziki. Vloženega predmeta ni mogoče odstraniti v nobenem drugem programskem jeziku, ker nima medjezikovne podpore. Predmet, ki je vložen v Python, je morda odstranjen tudi v Pythonu. Enako velja za različne različice Pythona; predmet, ki je vložen v določeni različici Pythona, v drugi različici morda ne bo pravilno odstranjen. Če želite izvesti postopek luženja in odstranjevanja, moramo najprej uvoziti modul kisline v naš skript Python.

V tem članku se bomo naučili uporabljati Python modul za kisanje za izvajanje luženja in odstranjevanja s primeri.

Primeri nabiranja Pythona

Oglejmo si nekaj primerov za razumevanje postopka luženja Pythona. Pred izvedbo dekapiranja moramo datoteko odpreti v načinu pisanja. Datoteko je treba odpreti v binarnem načinu, saj je vloženi predmet shranjen v toku bajtov. Odlagališče () je funkcija modula kumarice, ki se uporablja za ustvarjanje kumarice. Potrebna sta dva argumenta, tj.e., objekt Python, ki ga je treba vložiti, in datoteko, kamor bo vloženi objekt shranjen.

Primer 1: Izberite seznam

V danem primeru smo ustvarili seznam številk in ga kisli s kislo kislino.funkcija dump ().

#importing pickle module
uvozna kumarica
#declaring seznam številk
številski seznam = [1,2,3,4,5,6]
#pickling seznam in shranjevanje v datoteko
listfile = odprto ('listPickle', 'wb')
kumarica.dump (num_list, listfile)
seznam datotek.zapri ()
print ("Kiselna kisa je uspešno ustvarjena.")

Izhod

Rezultat kaže, da je bil seznam uspešno vložen.

2. primer: Izberite slovar

Zdaj pa pobirajmo slovarski objekt Python. Študentski slovar se ustvari in luži s kislo kislino.funkcija dump ().

#importing pickle module
uvozna kumarica
#declaring študentskega slovarja
std_dict = 'name': 'John', 'age': 22, 'class': 'BS'
#pickling slovar in shranjevanje v datoteko
dictfile = odprto ('dictPickle', 'wb')
kumarica.dump (std_dict, dictfile)
dictfile.zapri ()
print ("Slovar je uspešno kisel.")

Izhod

Rezultat kaže, da je slovar uspešno kisel.

3. primer: kislo kumarico

Zdaj pa pobirajmo Python tuple objekt. Tuple objekt je ustvarjen in kisan s kislo kislino.funkcija dump ().

#importing pickle module
uvozna kumarica
#declaring tuple
my_tuple = ((1,1), (2,2), (3,3), (4,4))
#pickling slovar in shranjevanje v datoteko
datoteka tuple = odprta ('tuplePickle', 'wb')
kumarica.dump (my_tuple, tuplefile)
tuplefile.zapri ()
print ("Torta je uspešno vložena.")

Izhod

Rezultat kaže, da je objekt tuple uspešno kisel.

Vredu! Vse je bilo v luženju različnih Pythonovih predmetov.

Primeri odstranjevanja Pythona

Zdaj pa si oglejmo nekaj primerov za postopek odstranjevanja Pythona. Odstranili bomo vse Pythonove predmete, ki smo jih vložili v prejšnjih primerih. V postopku odstranjevanja se vložena datoteka odpre v načinu branja. Kumarica.load () se uporablja za odstranjevanje predmeta Python. Datotečni objekt se posreduje kot argument kislemu kumarici.load () funkcija.

Primer 1: Odstranite seznam

Vloženi objekt seznama je odstranjen in dodeljen novemu seznamu.

#importing pickle module
uvozna kumarica
#opening the listPickle datoteko v razpoloženju za branje
pickle_in = odprto ('listPickle', 'rb')
#unpickling seznama in dodelitev predmetu seznama
num_list = kumarica.obremenitev (pickle_in)
natisni (seznam_številk)

Izhod

2. primer: Odstranite slovar

Vloženi predmet študentskega slovarja je odstranjen in dodeljen novemu slovarskemu objektu.

#importing pickle module
uvozna kumarica
#opening the dictPickle file in read mood
pickle_in = odprt ('dictPickle', 'rb')
#unpickling dikta in dodelitev predmetu slovar
std_dict = kumarica.obremenitev (pickle_in)
natisni (std_dict)

Izhod

Primer 3: Odstranite tupleOutput

Vloženi objekt tuple je odstranjen in dodeljen novemu objektu tuple.

#importing pickle module
uvozna kumarica
#opening the tuplePickle file in read mood
pickle_in = odprt ('tuplePickle', 'rb')
#unpickling torte in dodelitev predmetu slovar
std_dict = kumarica.obremenitev (pickle_in)
natisni (std_dict)

Izhod

 Zaključek

Pickle je vgrajeni modul Python, ki se uporablja za izvajanje serializacije in deserializacije. Serializacija in deserializacija sta znani tudi kot luženje oziroma odstranjevanje. Z luženjem lahko objekt Python shranimo v obliki bajtnega toka in ga kasneje tudi pridobimo. Postopek odstranjevanja oznak se nanaša na pretvorbo vloženega predmeta v objekt Python. Ta članek s primeri pojasnjuje postopek luženja in odstranjevanja.

OpenTTD vs Simutrans
Ustvarjanje lastne simulacije prevoza je lahko zabavno, sproščujoče in izjemno vabljivo. Zato morate preizkusiti čim več iger, da boste našli tisto, k...
Vadnica za OpenTTD
OpenTTD je ena izmed najbolj priljubljenih poslovnih simulacijskih iger. V tej igri morate ustvariti čudovit prevozniški posel. Vendar boste začeli na...
SuperTuxKart za Linux
SuperTuxKart je odličen naslov, zasnovan tako, da vam brezplačno ponuja izkušnjo Mario Kart v vašem sistemu Linux. Igrati je precej zahtevno in zabavn...