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 moduleuvozna 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 moduleuvozna 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 moduleuvozna 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 moduleuvozna 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 moduleuvozna 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 moduleuvozna 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.