Vývojáři Pythonu chtějí uložit datové objekty, jako jsou seznamy, slovníky, n-tice a třídy, do souboru. V této situaci vstupuje do hry modul pro nakládání Python.
Pickle je vestavěný modul Pythonu, který se používá k serializaci a deserializaci struktury objektu Pythonu. Serializace je proces převodu objektu Pythonu na bajtový proud (0 a 1). To je také známé jako moření. Účelem procesu nakládání je uložit objekt Python na disk ve formě bajtového proudu. Nakládaný objekt Pythonu lze převést zpět na objekt Pythonu a tento proces se označuje jako unbickling nebo deserializace.
Moření v Pythonu je užitečné, když musíme uložit stav objektu Pythonu a provést úlohu analýzy dat. Například když pracujeme s algoritmy hlubokého učení a chceme je použít později. V tomto stavu jej můžeme uložit na disk pro pozdější použití. Moření však není dobrá volba, když pracujeme s různými programovacími jazyky. Nakládaný objekt nelze zrušit v jiném programovacím jazyce, protože nemá podporu více jazyků. Objekt, který je nakládán v Pythonu, může být také zrušen v Pythonu. Totéž platí pro různé verze Pythonu; objekt, který je nakládán v konkrétní verzi Pythonu, nemusí být správně odebrán v jiné verzi. Chcete-li provést proces nakládání a zvedání, nejdříve musíme importovat modul nakládání do našeho skriptu Python.
V tomto článku se na příkladech naučíme používat modul pro nakládání Pythonu k provádění nakládání a odlepování.
Příklady moření v Pythonu
Podívejme se na několik příkladů k pochopení procesu nakládání v Pythonu. Před provedením operace moření musíme soubor otevřít v režimu psaní. Soubor musí být otevřen v binárním režimu, protože nakládaný objekt je uložen v bajtovém proudu. Dump () je funkce modulu na nakládání, který se používá k vytvoření nálevu. Vyžadují se dva argumenty, tj.E., objekt Python, který má být nakládán, a soubor, kam bude nakládaný objekt uložen.
Příklad 1: Nakládejte seznam
V uvedeném příkladu jsme vytvořili seznam čísel a nakládali jej pomocí nálevu.funkce dump ().
#importující nakládací modulimportovat nálev
# deklarování seznamu čísel
num_list = [1,2,3,4,5,6]
#zvednutí seznamu a uložení do souboru
listfile = open ('listPickle', 'wb')
lák.výpis (num_list, listfile)
seznam souborů.zavřít()
print ("Okurek seznamu je úspěšně vytvořen.")
Výstup
Výstup ukazuje, že seznam je úspěšně nakládán.
Příklad 2: Nakládejte slovník
Pojďme si vybrat objekt slovníku Pythonu. Studentský slovník je vytvořen a nakládán pomocí nálevu.funkce dump ().
#importující nakládací modulimportovat nálev
#delarování studentského slovníku
std_dict = 'name': 'John', 'age': 22, 'class': 'BS'
# vyzvednutí slovníku a uložení do souboru
dictfile = open ('dictPickle', 'wb')
lák.výpis (std_dict, dictfile)
dictfile.zavřít()
print ("Slovník je úspěšně nakládán.")
Výstup
Výstup ukazuje, že slovník je úspěšně nakládán.
Příklad 3: Nakládat n-tici
Nyní si vezměte objekt Python tice. Objekt řazené kolekce členů je vytvořen a nakládán pomocí nálevu.funkce dump ().
#importující nakládací modulimportovat nálev
# deklarování n-tice
my_tuple = ((1,1), (2,2), (3,3), (4,4))
# vyzvednutí slovníku a uložení do souboru
tuplefile = open ('tuplePickle', 'wb')
lák.výpis (my_tuple, tuplefile)
tuplefile.zavřít()
print ("N-tice je úspěšně nakládaná.")
Výstup
Výstup ukazuje, že objekt n-tice je úspěšně nakládán.
V pořádku! To bylo všechno o moření různých objektů Pythonu.
Příklady odepnutí pythonu
Nyní se podívejme na několik příkladů procesu zvedání pythonu. Rozbalíme všechny objekty Pythonu, které jsme vybrali v předchozích příkladech. V procesu zvedání se nakládaný soubor otevře v režimu čtení. Lák.Funkce load () se používá k odtržení objektu Pythonu. Objekt souboru je předán jako argument nálevu.funkce load ().
Příklad 1: Vyjmutí seznamu
Objekt nakládaného seznamu není vybrán a je přiřazen k novému objektu seznamu.
#importující nakládací modulimportovat nálev
#otevření souboru ListPickle při čtení nálady
pickle_in = open ('listPickle', 'rb')
# zrušení výběru seznamu a přiřazení k objektu seznamu
num_list = lák.zatížení (pickle_in)
tisk (num_list)
Výstup
Příklad 2: Vyjmutí slovníku
Objekt nakládaného studentského slovníku je zrušen a přiřazen k novému objektu slovníku.
#importující nakládací modulimportovat nálev
#otevření souboru dictPickle při čtení nálady
pickle_in = open ('dictPickle', 'rb')
# zrušit výběr a přiřazení k objektu slovníku
std_dict = lák.zatížení (pickle_in)
tisk (std_dict)
Výstup
Příklad 3: Vyjmutí tupleOutput
Nakládaný objekt n-tice je nevyzvednutý a přiřazen k novému objektu n-tice.
#importující nakládací modulimportovat nálev
#otevření souboru n-ticePickle při čtení nálady
pickle_in = open ('tuplePickle', 'rb')
# rozbalení n-tice a přiřazení k objektu slovníku
std_dict = lák.zatížení (pickle_in)
tisk (std_dict)
Výstup
Závěr
Pickle je vestavěný modul Pythonu, který se používá k provádění operací serializace a deserializace. Serializace a deserializace jsou také známé jako moření, resp. Mořením můžeme uložit objekt Pythonu ve formě bajtového proudu a později jej načíst. Proces zvedání se týká převodu nakládaného objektu na objekt Pythonu. Tento článek vysvětluje proces nakládání a odřezávání pomocí příkladů.