Dezvoltatorii Python doresc să salveze obiectele de date precum liste, dicționare, tupluri și clase într-un fișier. În această situație, intră în joc modulul de murături Python.
Pickle este modulul Python încorporat care este utilizat pentru serializarea și deserializarea structurii obiectului Python. Serializarea este procesul de conversie a obiectului Python într-un flux de octeți (0 și 1). Este, de asemenea, cunoscut sub numele de decapare. Scopul procesului de decapare este salvarea obiectului Python pe un disc sub forma unui flux de octeți. Obiectul murat Python poate fi convertit înapoi în obiect Python, iar acest proces este cunoscut sub numele de despicare sau deserializare.
Decaparea Python este utilă atunci când trebuie să salvăm starea obiectului Python și să efectuăm sarcina de analiză a datelor. De exemplu, atunci când lucrăm cu algoritmi de învățare profundă și dorim să-l folosim pentru o dată ulterioară. În această condiție, îl putem stoca pe disc pentru utilizare ulterioară. Cu toate acestea, decaparea nu este o opțiune bună atunci când lucrăm cu diferite limbaje de programare. Obiectul murat nu poate fi despicat în nici un alt limbaj de programare, deoarece nu are suport între limbi străine. Obiectul care este murat în Python, poate fi despicat doar și în Python. Același lucru este valabil pentru diferite versiuni Python; un obiect care este murat într-o anumită versiune Python, este posibil să nu fie despicat corect într-o altă versiune. Pentru a efectua procesul de decapare și decupare, mai întâi, trebuie să importăm modulul de decapare în scriptul nostru Python.
În acest articol, vom învăța să folosim modulul de murare Python pentru efectuarea decapării și decojirii cu exemple.
Exemple de decapare Python
Să vedem câteva exemple pentru a înțelege procesul de decapare Python. Înainte de a efectua operația de decapare, trebuie să deschidem fișierul în modul de scriere. Fișierul trebuie deschis în modul binar, deoarece obiectul murat este stocat în fluxul de octeți. Dump () este o funcție a modulului de murături care este utilizat pentru a crea murătura. Este nevoie de două argumente, i.e., obiectul Python care urmează să fie murat și fișierul în care va fi salvat obiectul murat.
Exemplul 1: Pickle o listă
În exemplul dat, am creat o listă de numere și am murat-o folosind murătura.funcția dump ().
#importarea modulului muratimport murat
#declararea unei liste de numere
num_list = [1,2,3,4,5,6]
#picând lista și stocarea într-un fișier
listfile = deschis ('listPickle', 'wb')
murături.dump (num_list, listfile)
listfile.închide()
print ("Lista murată este creată cu succes.")
Ieșire
Rezultatul arată că lista este murată cu succes.
Exemplul 2: Pickle un dicționar
Acum, să murim un obiect dicționar Python. Un dicționar studențesc este creat și murat cu murături.funcția dump ().
#importarea modulului muratimport murat
#declararea unui dicționar studențesc
std_dict = 'name': 'John', 'age': 22, 'class': 'BS'
#picând dicționarul și stocându-l într-un fișier
dictfile = deschis ('dictPickle', 'wb')
murături.dump (std_dict, dictfile)
dictfile.închide()
print ("Dicționarul este murat cu succes.")
Ieșire
Rezultatul arată că dicționarul este murat cu succes.
Exemplul 3: Murati un tuplu
Acum, să murăm un obiect Python tuplă. Un obiect de tip tuplă este creat și murat folosind murătura.funcția dump ().
#importarea modulului muratimport murat
#declararea unui tuplu
my_tuple = ((1,1), (2,2), (3,3), (4,4))
#picând dicționarul și stocându-l într-un fișier
tuplefile = deschis ('tuplePickle', 'wb')
murături.dump (my_tuple, tuplefile)
tuplefile.închide()
print ("Tuplul este murat cu succes.")
Ieșire
Ieșirea arată că obiectul tuplu este murat cu succes.
Bine! A fost vorba despre decaparea diferitelor obiecte Python.
Exemple Python Unpickling
Acum, haideți să vedem câteva exemple pentru procesul de descompunere Python. Vom desface toate obiectele Python pe care le-am murat în exemplele anterioare. În procesul de decupare, fișierul murat este deschis în modul de citire. Murătura.funcția load () este utilizată pentru a desface obiectul Python. Obiectul fișier este transmis ca argument către murătură.funcția load ().
Exemplul 1: Desfaceți o listă
Obiectul listă murată este despicat și atribuit unui nou obiect listat.
#importarea modulului muratimport murat
# deschiderea listă Fișierul Pickle în starea de citire
pickle_in = open ('listPickle', 'rb')
#unpickling list și atribuirea obiectului listă
num_list = murătură.încărcare (pickle_in)
print (num_list)
Ieșire
Exemplul 2: Desfaceți un dicționar
Obiectul dicționar murat student este despicat și atribuit unui nou obiect dicționar.
#importarea modulului muratimport murat
# deschiderea fișierului dictPickle în starea de citire
pickle_in = open ('dictPickle', 'rb')
#unpickling dict și atribuirea obiectului dicționar
std_dict = murătură.încărcare (pickle_in)
print (std_dict)
Ieșire
Exemplul 3: Desfaceți o ieșire tuplă
Obiectul tuple murat este despicat și atribuit unui nou obiect tuple.
#importarea modulului muratimport murat
# deschiderea fișierului tuplePickle în starea de citire
pickle_in = open ('tuplePickle', 'rb')
#unpickling tuplul și atribuirea obiectului dicționar
std_dict = murătură.încărcare (pickle_in)
print (std_dict)
Ieșire
Concluzie
Pickle este un modul încorporat Python care este utilizat pentru a efectua operațiile de serializare și deserializare. Serializarea și deserializarea sunt, de asemenea, cunoscute sub numele de decapare și respectiv decolorare. Prin decapare, putem stoca obiectul Python sub forma unui flux de octeți și ulterior îl putem prelua. Procesul de descuamare se referă la convertirea obiectului murat într-un obiect Python. Acest articol explică procesul de decapare și decupare cu exemple.