Piton

Python Savanyúság bemutató

Python Savanyúság bemutató

A Python fejlesztői az adatobjektumokat, például a listákat, szótárakat, sorrendeket és osztályokat fájlba akarják menteni. Ebben a helyzetben a Python savanyú modul lép működésbe.

A Pickle a Python beépített modulja, amelyet a Python objektum struktúrájának sorosítására és deszerializálására használnak. A szerializálás a Python objektum bájtfolyammá alakításának folyamata (0 és 1). Pácolásnak is nevezik. A pácolási folyamat célja a Python objektum lemezre mentése bájtfolyam formájában. A Python pácolt objektum visszaállítható Python objektummá, és ezt a folyamatot szedésmentesítésnek vagy deserializációnak nevezik.

A Python pácolás akkor hasznos, ha mentenünk kell a Python objektum állapotát, és végre kell hajtanunk az adatelemzési feladatot. Például, amikor mély tanulási algoritmusokkal dolgozunk, és később szeretnénk használni. Ebben az állapotban tárolhatjuk a lemezen későbbi felhasználás céljából. A pácolás azonban nem jó lehetőség, ha különféle programozási nyelvekkel dolgozunk. A pácolt objektum nem szedhető le más programozási nyelven, mivel nem rendelkezik nyelvek közötti támogatással. A Pythonban pácolt objektumot csak a Pythonban lehet szedni. Ugyanez vonatkozik a különböző Python verziókra; egy adott Python verzióban pácolt objektumot előfordulhat, hogy egy másik verzióban nem megfelelően szedik. A pácolás és szedés eltávolításához először be kell importálnunk a pác modult a Python szkriptünkbe.

Ebben a cikkben megtanuljuk használni a Python savanyú modult a pácolás és a szedés végrehajtására példákkal.

Példák a Python pácolásra

Nézzünk meg néhány példát a Python pácolási folyamat megértéséhez. A pácolási művelet végrehajtása előtt meg kell nyitnunk a fájlt írási módban. A fájlt bináris módban kell megnyitni, mivel a pácolt objektum a bájtfolyamban van tárolva. A dump () a savanyúság modul függvénye, amelyet a savanyúság létrehozásához használnak. Két érvre van szükség, vagyis.e., a pácolandó Python objektum és a fájl, ahová a pácolt objektum mentésre kerül.

1. példa: Pácoljon egy listát

Az adott példában elkészítettük a számok listáját, és a savanyúsággal pácoltuk.dump () függvény.

#importimodul importálása
import savanyúság
#számlista deklarálása
szám_lista = [1,2,3,4,5,6]
# a lista kiválogatása és fájlban történő tárolás
listfile = open ('listPickle', 'wb')
savanyú uborka.dump (num_list, listfile)
listfile.Bezárás()
print ("A lista savanyúság létrehozása sikeres volt.")

Kimenet

A kimenet azt mutatja, hogy a lista sikeresen pácolt.

2. példa: Savanyítson egy szótárt

Most vegyünk egy Python szótár objektumot. A hallgatói szótárat savanyúsággal készítik és pácolják.dump () függvény.

#importimodul importálása
import savanyúság
# hallgatói szótár deklarálása
std_dict = 'név': 'John', 'kor': 22, 'osztály': 'BS'
# a szótár pácolása és fájlban történő tárolása
dictfile = open ('dictPickle', 'wb')
savanyú uborka.dump (std_dict, dictfile)
dictfile.Bezárás()
print ("A szótár pácolása sikeres.")

Kimenet

A kimenet azt mutatja, hogy a szótár sikeresen pácolt.

3. példa: Savanyítson egy duplát

Most pácoljuk meg a Python kettős objektumot. Tuple objektum létrehozása és pácolása savanyítással történik.dump () függvény.

#importimodul importálása
import savanyúság
# dupla deklarálása
my_tuple = ((1,1), (2,2), (3,3), (4,4))
# a szótár pácolása és fájlban történő tárolása
tuplefile = nyitott ('tuplePickle', 'wb')
savanyú uborka.dump (my_tuple, tuplefile)
tuplefile.Bezárás()
print ("A duplát sikeresen pácoljuk.")

Kimenet

A kimenet azt mutatja, hogy a két objektumot sikeresen pácolták.

Rendben! Ennyi volt a különböző Python-objektumok pácolása.

Példák a Python leválasztására

Most nézzünk meg néhány példát a Python szedés folyamatára. Kiválasztjuk az összes Python objektumot, amelyeket az előző példákban pácoltunk. A szedés folyamatában a pácolt fájl olvasási módban megnyílik. A savanyúság.a load () függvény a Python objektum szétválasztásához használható. A fájlobjektumot argumentumként továbbítják a savanyúságnak.load () függvény.

1. példa: Válasszon ki egy listát

A pácolt listaobjektumot nem szedik, és egy új listaobjektumhoz rendelik.

#importimodul importálása
import savanyúság
#opening a listA savanyú fájl olvasási hangulatban
savanyúság_in = nyitott ('listPickle', 'rb')
# a lista eltávolítása és hozzárendelés a listaobjektumhoz
num_list = savanyúság.betöltés (savanyúság
nyomtatás (szám_lista)

Kimenet

2. példa: Válasszon ki egy szótárt

A pácolt hallgatói szótár objektumot nem szedik, és hozzárendelik egy új szótár objektumhoz.

#importimodul importálása
import savanyúság
# a dictPickle fájl megnyitása olvasási hangulatban
savanyúság_in = nyitott ('dictPickle', 'rb')
# szedés eltávolítása és hozzárendelés a szótár objektumhoz
std_dict = savanyúság.betöltés (savanyítás_in)
nyomtatás (std_dict)

Kimenet

3. példa: Válassza le a tupleOutput parancsot

A pácolt kettős objektumot nem szedik, és hozzárendelik egy új két objektumhoz.

#importimodul importálása
import savanyúság
# a tuplePickle fájl megnyitása olvasási hangulatban
savanyúság_in = nyitott ('tuplePickle', 'rb')
# szedés eltávolítása és hozzárendelés a szótár objektumhoz
std_dict = savanyúság.betöltés (savanyúság
nyomtatás (std_dict)

Kimenet

 Következtetés

A Pickle egy Python beépített modul, amelyet a szerializációs és deserializációs műveletek végrehajtására használnak. A szerializálást és a deszerializálást pácolásnak, illetve pácolásnak is nevezik. A pácolás révén a Python objektumot bájtfolyam formájában tárolhatjuk, majd később visszakereshetjük. A szedés szétválasztása a pácolt objektum Python-objektummá alakítására utal. Ez a cikk példákkal ismerteti a pácolás és a pácolás folyamatát.

Shadow of the Tomb Raider for Linux Tutorial
A Shadow of the Tomb Raider a Tomb Raider sorozat tizenkettedik kiegészítője - az Eidos Montreal által létrehozott akció-kaland játék franchise. A ját...
Az FPS növelése Linux alatt?
Az FPS jelentése Képkocka másodpercenként. Az FPS feladata a videolejátszások vagy játékteljesítmények képkockasebességének mérése. Egyszerű szavakkal...
A legnépszerűbb Oculus App Lab játékok
Ha Oculus fülhallgató-tulajdonos, akkor tisztában kell lennie az oldalsó töltéssel. Az oldaltöltés a nem áruházi tartalom fejhallgatóra történő telepí...