Samouczek Python Pickle

Samouczek Python Pickle

Programiści Python chcą zapisać obiekty danych, takie jak listy, słowniki, krotki i klasy w pliku. W tej sytuacji moduł Python Pickle wchodzi w grę.

Pickle to wbudowany moduł Pythona, który jest używany do serializacji i deserializacji struktury obiektu Pythona. Serializacja to proces przekształcania obiektu Pythona w strumień bajtów (0 i 1). Jest również znany jako marynowanie. Celem procesu wytrawnego jest zapisanie obiektu Pythona na dysku w postaci strumienia bajt. Marynowany obiekt Pythona można przekształcić z powrotem na obiekt Python, a proces ten jest znany jako odstępstwo lub deserializacja.

Caling Python jest przydatny, gdy musimy zapisać stan obiektu Pythona i wykonać zadanie analizy danych. Na przykład, gdy pracujemy z algorytmami głębokiego uczenia się i chcemy go używać przez później. W tym stanie możemy przechowywać go na dysku w celu późniejszego użycia. Jednak marynowanie nie jest dobrą opcją, gdy pracujemy z różnymi językami programowania. Marynowanego obiektu nie może być rozwinięty w żadnym innym języku programowania, ponieważ nie ma wsparcia krzyżowego. Obiekt, który jest marynowany w Pythonie, może być również rozbity w Pythonie. To samo dotyczy różnych wersji Pythona; obiekt marynowany w określonej wersji Python, może nie być odpowiednio rozwinięty w innej wersji. Aby wykonać proces marynowania i odblokowywania, najpierw musimy zaimportować moduł marynaty w naszym skrypcie Python.

W tym artykule nauczymy się używać modułu pikli Python do wykonywania marynowania i odblasku się przykładami.

Przykłady marynowania Pythona

Zobaczmy kilka przykładów, aby zrozumieć proces ładowania Pythona. Przed wykonaniem operacji marynowania musimy otworzyć plik w trybie pisania. Plik musi być otwarty w trybie binarnym, ponieważ marynowany obiekt jest przechowywany w strumieniu bajtów. Dump () jest funkcją modułu marynowania używanego do utworzenia marynaty. To wymaga dwóch argumentów, ja.mi., obiekt Python, który ma być marynowany, a plik, w którym marynowany obiekt zostanie zapisany.

Przykład 1: Marynowanie listy

W danym przykładzie utworzyliśmy listę liczb i marynowaliśmy ją za pomocą marynaty.zrzut () funkcja.

#Importing moduł marynaty
Importuj marynatkę
#Deklarowanie listy liczb
num_list = [1,2,3,4,5,6]
#Picking listy i przechowywanie w pliku
ListFile = Open („ListPickle”, „WB”)
marynata.Zrzucenie (num_list, list List)
ListFile.zamknąć()
Drukuj („lista jest tworzona pomyślnie.")

Wyjście

Dane wyjściowe pokazuje, że lista jest pomyślnie marynowana.

Przykład 2: Marynowanie słownika

Teraz, marynujmy obiekt słownika Pythona. Słownik studencki jest tworzony i marynowany za pomocą marynaty.zrzut () funkcja.

#Importing moduł marynaty
Importuj marynatkę
#Deklarowanie słownika studenckiego
std_dict = „name”: „John”, „wiek”: 22, „klasa”: „bs”
#Picking the Dictionary i przechowywanie w pliku
dictFile = Open („Dictpickle”, „wb”)
marynata.zrzut (std_dict, Dictfile)
Dictfile.zamknąć()
Drukuj („Słownik jest pomyślnie marynowany.")

Wyjście

Dane wyjściowe pokazuje, że słownik jest pomyślnie marynowany.

Przykład 3: marynat

Teraz, marynujmy obiekt Python Tuple. Obiekt krotek jest tworzony i marynowany za pomocą marynaty.zrzut () funkcja.

#Importing moduł marynaty
Importuj marynatkę
#Deklarowanie krotki
my_tuple = ((1,1), (2,2), (3,3), (4,4))
#Picking the Dictionary i przechowywanie w pliku
tupleFile = Open („Tuplepickle”, „WB”)
marynata.zrzut (my_tuple, tuplefile)
Tuplefile.zamknąć()
Drukuj („krotek jest pomyślnie marynowany.")

Wyjście

Wyjście pokazuje, że obiekt krotek jest pomyślnie marynowany.

W porządku! Chodziło o cała różne obiekty Pythona.

Przykłady rozbijające Python

Teraz zobaczmy kilka przykładów procesu odblokowywania Pythona. Odłączymy wszystkie obiekty Pythona, które marynowaliśmy w poprzednich przykładach. W procesie odłączania plik marynowany jest otwarty w trybie czytania. Marynata.Funkcja ładowania () służy do rozbicia obiektu Pythona. Obiekt pliku jest przekazywany jako argument do marynaty.Funkcja ładowania ().

Przykład 1: Odłącz listę

Marynowana lista obiekt jest odblokowany i przypisany do nowego obiektu listy.

#Importing moduł marynaty
Importuj marynatkę
#Openowanie pliku Listpickle w czytaniu nastroju
Pickle_in = Open („Listpickle”, „rb”)
#Unpicling lista i przypisanie do obiektu listy
num_list = marynata.Załaduj (pickle_in)
druk (num_list)

Wyjście

Przykład 2: Rozbij słownik

Marynowany obiekt słownika studenckiego jest odblokowany i przypisany do nowego obiektu słownika.

#Importing moduł marynaty
Importuj marynatkę
#Openowanie pliku Dictpickle w czytaniu nastroju
Pickle_in = Open („Dictpickle”, „rb”)
#Unpicking the Dict i przypisanie do obiektu słownika
std_dict = marynata.Załaduj (pickle_in)
Drukuj (std_dict)

Wyjście

Przykład 3: Odłącz tupleoutput

Marynowany obiekt krotek jest odblokowany i przypisany do nowego obiektu krotki.

#Importing moduł marynaty
Importuj marynatkę
#Openowanie pliku krotki w czytaniu nastroju
Pickle_in = Open („Tuplepickle”, „rb”)
#Unpicking the Tuple i przypisanie do obiektu słownika
std_dict = marynata.Załaduj (pickle_in)
Drukuj (std_dict)

Wyjście

Wniosek

Pickle to wbudowany moduł Pythona, który służy do wykonywania operacji serializacji i deserializacji. Serializacja i deserializacja są również odpowiednio znane jako marynowanie i odblokowanie. Poprzez marynowanie możemy przechowywać obiekt Python w postaci strumienia bajtów, a później go odzyskać. Proces odbudowy odnosi się do przekształcania marynowanego obiektu w obiekt Python. W tym artykule wyjaśniono proces marynowania i odblokowywania z przykładami.