So serialisieren und deserialisieren Sie Objekte mithilfe von Pickle und JSON in Python

WBOY
Freigeben: 2023-10-16 09:22:50
Original
1779 Leute haben es durchsucht

So serialisieren und deserialisieren Sie Objekte mithilfe von Pickle und JSON in Python

So verwenden Sie Pickle und JSON in Python zur Objektserialisierung und -deserialisierung

Python ist eine einfache, aber leistungsstarke Programmiersprache, die über viele nützliche integrierte Bibliotheken und Module verfügt, die es Entwicklern ermöglichen, verschiedene Aufgaben schnell auszuführen . Unter diesen sind Pickle und JSON zwei häufig verwendete Module für die Objektserialisierung und -deserialisierung. In diesem Artikel wird die Verwendung dieser beiden Module zum Serialisieren und Deserialisieren von Objekten vorgestellt und detaillierte Codebeispiele bereitgestellt.

  1. Verwenden Sie Pickle zur Objektserialisierung und -deserialisierung.

Pickle ist ein Modul in Python, mit dem Objekte zur Speicherung oder Übertragung in Binärdaten konvertiert und Binärdaten auch im Originalobjekt wiederhergestellt werden können.

Zuerst müssen wir das Pickle-Modul importieren:

import pickle
Nach dem Login kopieren

Als nächstes können wir die Dumps-Funktion des Pickle-Moduls verwenden, um das Objekt in Binärdaten zu serialisieren:

data = {'name':'Tom', 'age': 25, 'city': 'New York'}
serialized_data = pickle.dumps(data)
Nach dem Login kopieren

Nach Verwendung der Dumps-Funktion speichert die Variable serialized_data das serialisierte Binärdaten. Im Gegenteil, wir können die Ladefunktion verwenden, um die Binärdaten im Originalobjekt wiederherzustellen:

deserialized_data = pickle.loads(serialized_data)
print(deserialized_data)
Nach dem Login kopieren

Zu diesem Zeitpunkt speichert die Variable deserialized_data das wiederhergestellte Originalobjekt.

Hier ist ein vollständiges Beispiel, das zeigt, wie ein benutzerdefiniertes Person-Objekt serialisiert und deserialisiert wird:

import pickle

class Person:
    def __init__(self, name, age):
        self.name = name
        self.age = age

# 序列化对象
person = Person('Tom', 25)
serialized_person = pickle.dumps(person)

# 反序列化对象
deserialized_person = pickle.loads(serialized_person)
print(deserialized_person.name)
print(deserialized_person.age)
Nach dem Login kopieren
  1. JSON für die Serialisierung und Deserialisierung von Objekten verwenden

JSON ist ein leichtes Level-Datenaustauschformat, das einfach zu lesen und zu schreiben ist. Python stellt das JSON-Modul bereit, mit dem JSON-Objekte einfach serialisiert und deserialisiert werden können.

Zuerst müssen wir das JSON-Modul importieren:

import json
Nach dem Login kopieren

Als nächstes können wir die Dumps-Funktion des JSON-Moduls verwenden, um das Objekt in einen JSON-String zu serialisieren:

data = {'name':'Tom', 'age': 25, 'city': 'New York'}
serialized_data = json.dumps(data)
Nach dem Login kopieren

Nach Verwendung der Dumps-Funktion wird die Variable serialized_data gespeichert die serialisierte JSON-Zeichenfolge. Im Gegenteil, wir können die Load-Funktion verwenden, um die JSON-Zeichenfolge im Originalobjekt wiederherzustellen:

deserialized_data = json.loads(serialized_data)
print(deserialized_data)
Nach dem Login kopieren

Zu diesem Zeitpunkt speichert die Variable deserialized_data das wiederhergestellte Originalobjekt.

In ähnlicher Weise finden Sie hier ein vollständiges Beispiel, das zeigt, wie ein benutzerdefiniertes Personenobjekt serialisiert und deserialisiert wird:

import json

class Person:
    def __init__(self, name, age):
        self.name = name
        self.age = age

# 序列化对象
person = Person('Tom', 25)
serialized_person = json.dumps(person.__dict__)

# 反序列化对象
deserialized_person = json.loads(serialized_person)
print(deserialized_person['name'])
print(deserialized_person['age'])
Nach dem Login kopieren

Zusammenfassung:

Mit den Pickle- und JSON-Modulen können wir problemlos Serialisierung und Deserialisierung von Objekten durchführen. Verwenden Sie Pickle, um Objekte in Binärdaten umzuwandeln, die zur Dateispeicherung und Netzwerkübertragung verwendet werden können. JSON kann als universelles Datenaustauschformat problemlos Daten mit anderen Sprachen austauschen. Entsprechend den spezifischen Nutzungsszenarien und Anforderungen können wir das geeignete Modul für die Durchführung von Objektserialisierungs- und Deserialisierungsvorgängen auswählen.

Das obige ist der detaillierte Inhalt vonSo serialisieren und deserialisieren Sie Objekte mithilfe von Pickle und JSON in Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage