Pickle, das standardmäßig Teil der Python-Bibliothek ist, ist ein wichtiges Modul, wenn Sie zwischen Benutzersitzungen eine Persistenz benötigen. Pickle ermöglicht als Modul das Speichern von Python-Objekten zwischen Prozessen.
Unabhängig davon, ob Sie für eine Datenbank, ein Spiel, ein Forum oder eine andere Anwendung programmieren, in der Informationen zwischen Sitzungen gespeichert werden müssen, eignet sich pickle zum Speichern von IDs und Einstellungen. Das pickle-Modul kann beispielsweise Datentypen wie Boolesche Werte, Zeichenfolgen und Bytearrays, Listen, Wörterbücher, Funktionen und mehr speichern.
Hinweis: Das Konzept des Beizens wird auch als Serialisierung, Marshalling und Abflachen bezeichnet. Der Punkt ist jedoch immer derselbe, um ein Objekt zum späteren Abrufen in einer Datei zu speichern. Das Beizen erreicht dies, indem das Objekt als ein langer Strom von Bytes geschrieben wird.
Um ein Objekt in eine Datei zu schreiben, verwenden Sie einen Code in der folgenden Syntax:
Import Gurke
object = Object ()
Dateihandler = offen (Dateiname, 'w')
pickle.dump (Objekt, Dateihandler)
So sieht ein reales Beispiel aus:
Import Gurke
Mathe importieren
object_pi = math.pi
file_pi = open ('filename_pi.obj', 'w')
pickle.dump (object_pi, file_pi)
Dieses Snippet schreibt den Inhalt von object_pi in die Datei Handler file_pi, was wiederum an die Datei gebunden ist Dateiname_pi.obj im Verzeichnis der Ausführung.
Laden Sie das Objekt aus der Datei, um den Wert des Objekts im Speicher wiederherzustellen. Angenommen, die eingelegte Gurke wurde noch nicht zur Verwendung importiert, importieren Sie sie zunächst:
Import Gurke
Dateihandler = offen (Dateiname, 'r')
object = pickle.load (Dateihandler)
Der folgende Code stellt den Wert von pi wieder her:
Import Gurke
file_pi2 = open ('filename_pi.obj', 'r')
object_pi2 = pickle.load (file_pi2)
Das Objekt ist dann wieder einsatzbereit, diesmal als object_pi2. Sie können natürlich die ursprünglichen Namen wiederverwenden, wenn Sie dies vorziehen. In diesem Beispiel werden aus Gründen der Übersichtlichkeit unterschiedliche Namen verwendet.
Beachten Sie Folgendes, wenn Sie das Pickle-Modul verwenden:
Trinkgeld: Erfahren Sie auch, wie Sie mithilfe von shelve Objekte in Python für eine andere Methode zur Aufrechterhaltung der Objektkontinuität speichern können.