Vývojári Pythonu chcú uložiť dátové objekty, ako sú zoznamy, slovníky, n-tice a triedy, do súboru. V tejto situácii prichádza na rad modul na nakladanie Python.
Pickle je vstavaný modul Pythonu, ktorý sa používa na serializáciu a deserializáciu štruktúry objektu Python. Serializácia je proces prevodu objektu Python na bajtový prúd (0 a 1). Je tiež známy ako morenie. Účelom procesu morenia je uložiť objekt Python na disk vo forme bajtového toku. Nakladaný objekt Pythonu je možné previesť späť na objekt Pythonu a tento proces je známy ako vyzdvihnutie alebo deserializácia.
Morenie Pythonu je užitočné, keď musíme uložiť stav objektu Pythonu a vykonať úlohu analýzy dát. Napríklad keď pracujeme s algoritmami hlbokého učenia a chceme ich použiť neskôr. V takomto prípade ho môžeme uložiť na disk pre neskoršie použitie. Morenie však nie je dobrá voľba, keď pracujeme s rôznymi programovacími jazykmi. Nakladaný objekt nie je možné vyzdvihnúť v žiadnom inom programovacom jazyku, pretože nemá podporu viacerých jazykov. Objekt, ktorý je nakladaný v Pythone, môže byť tiež vyzdvihnutý iba v Pythone. To isté platí pre rôzne verzie Pythonu; objekt, ktorý je nakladaný v konkrétnej verzii Pythonu, sa nemusí správne vyzdvihnúť v inej verzii. Aby sme mohli vykonať proces nakladania a odoberania, je potrebné najskôr importovať modul nakladania do nášho skriptu Python.
V tomto článku sa na príkladoch naučíme používať modul na nakladanie a nakladanie v jazyku Python.
Príklady morenia Pythonu
Pozrime sa na niekoľko príkladov na pochopenie procesu morenia Pythonu. Pred vykonaním operácie morenia musíme súbor otvoriť v režime zápisu. Súbor musí byť otvorený v binárnom režime, pretože nakladaný objekt je uložený v bajtovom streame. Dump () je funkcia modulu na nakladanie, ktorá sa používa na vytvorenie nálevu. Trvá to dva argumenty, t.j.e., objekt Python, ktorý sa má nakladať, a súbor, do ktorého sa nakladaný objekt uloží.
Príklad 1: Nakladanie zoznamu
V danom príklade sme vytvorili zoznam čísel a nakladali ho pomocou nálevu.funkcia dump ().
#importovanie modulu na nakladaniedovoz nálevu
# deklarovanie číselného zoznamu
num_list = [1,2,3,4,5,6]
# vybratie zoznamu a uloženie do súboru
listfile = open ('listPickle', 'wb')
nálev.výpis (num_list, listfile)
zoznam súborov.Zavrieť()
print ("Uhorka zoznamu je úspešne vytvorená.„)
Výkon
Výstup ukazuje, že zoznam je úspešne nakladaný.
Príklad 2: Nakladajte slovník
Teraz urobme nápravu objektu slovníka Python. Študentský slovník sa vytvára a nakladá pomocou nálevu.funkcia dump ().
#importovanie modulu na nakladaniedovoz nálevu
# deklarovanie študentského slovníka
std_dict = 'name': 'John', 'age': 22, 'class': 'BS'
# vyzdvihnutie slovníka a uloženie do súboru
dictfile = open ('dictPickle', 'wb')
nálev.výpis (std_dict, dictfile)
dictfile.Zavrieť()
print ("Slovník je úspešne nakladaný.„)
Výkon
Výstup ukazuje, že slovník je úspešne nakladaný.
Príklad 3: Nakladať n-ticu
Teraz urobme nápravu objektu n-tice Python. Objekt n-tice je vytvorený a nakladaný pomocou nálevu.funkcia dump ().
#importovanie modulu na nakladaniedovoz nálevu
# deklarovanie n-tice
my_tuple = (((1,1), (2,2), (3,3), (4,4))
# vyzdvihnutie slovníka a uloženie do súboru
tuplefile = open ('tuplePickle', 'wb')
nálev.výpis (my_tuple, tuplefile)
tuplefile.Zavrieť()
print ("N-tica je úspešne nakladaná.„)
Výkon
Výstup ukazuje, že objekt n-tice je úspešne nakladaný.
Dobre! To bolo všetko o morení rôznych objektov Pythonu.
Príklady odtrhnutia Pythonu
Teraz si ukážeme niekoľko príkladov procesu odstraňovania obsahu z jazyka Python. Rozbalíme všetky objekty Pythonu, ktoré sme vybrali v predchádzajúcich príkladoch. V procese odstraňovania obsahu sa nakladaný súbor otvorí v režime čítania. Uhorka.Funkcia load () sa používa na odtrhnutie objektu Python. Objekt súboru sa odovzdá ako nálev do nálevu.funkcia load ().
Príklad 1: Zrušte výber zoznamu
Objekt nakladaného zoznamu nie je vybratý a je priradený k novému objektu zoznamu.
#importovanie modulu na nakladaniedovoz nálevu
#otvorenie zoznamuPickle súbor pri čítaní nálady
pickle_in = open ('listPickle', 'rb')
#rozbalenie zoznamu a priradenie k objektu zoznamu
num_list = nálev.zaťaženie (pickle_in)
print (num_list)
Výkon
Príklad 2: Vyzdvihnutie slovníka
Objekt nakladaného študentského slovníka sa nevyberie a priradí sa k novému objektu slovníka.
#importovanie modulu na nakladaniedovoz nálevu
#otvorenie súboru dictPickle pri čítaní nálady
pickle_in = open ('dictPickle', 'rb')
# Zrušenie výberu diktu a priradenie k objektu slovníka
std_dict = nálev.zaťaženie (pickle_in)
print (std_dict)
Výkon
Príklad 3: Vyzdvihnutie tupleOutput
Nakladaný objekt n-tice je nevyberaný a priradený k novému objektu n-tice.
#importovanie modulu na nakladaniedovoz nálevu
#otvorenie súboru n-ticePickle pri čítaní nálady
pickle_in = open ('tuplePickle', 'rb')
# rozbalenie n-tice a priradenie k objektu slovníka
std_dict = nálev.zaťaženie (pickle_in)
print (std_dict)
Výkon
Záver
Pickle je vstavaný modul Pythonu, ktorý sa používa na vykonávanie operácií serializácie a deserializácie. Serializácia a deserializácia sú tiež známe ako morenie a neresenie. Morením môžeme objekt Pythonu uložiť vo forme bajtového toku a neskôr ho načítať. Proces odbúravania sa týka konverzie nakladaného objektu na objekt Python. V tomto článku sú na príkladoch vysvetlené procesy nakladania a odstraňovania škvŕn.