Heim >Backend-Entwicklung >Python-Tutorial >Detaillierte Analyse der JSON-Serialisierung in Python
Dieser Artikel bietet Ihnen eine detaillierte Analyse der JSON-Serialisierung in Python. Ich hoffe, dass er für Freunde hilfreich ist.
Der Grund, warum ich das schreibe, ist, dass ich immer verwirrt bin und es leicht ist, Fehler zu machen. Ich schreibe es auf und schaue, ob etwas dazwischenkommt
Serialisierung bezieht sich auf das Ändern von Variablen aus dem Speicher. Der Prozess, der gespeichert oder übertragen werden kann, wird als Serialisierung (mithilfe von Dumps) bezeichnet, und der Variableninhalt wird vom serialisierten Objekt erneut in
gelesen Speicher Dies nennt man Deserialisierung (mithilfe von Load oder Loads)
Wenn wir Objekte zwischen verschiedenen Programmiersprachen übertragen möchten, müssen wir das Objekt in ein Standardformat serialisieren. B. XML, aber eine bessere Möglichkeit besteht darin, es in JSON zu serialisieren, da JSON
als Zeichenfolge ausgedrückt wird, die von allen Sprachen gelesen werden kann und auch problemlos auf der Festplatte gespeichert oder über das Netzwerk übertragen werden kann . JSON ist nicht nur ein Standardformat, sondern auch schneller als XML
und kann direkt auf der Webseite gelesen werden, was sehr praktisch ist
Die Entsprechung zwischen JSON und den integrierten Daten von Python Die Typen lauten wie folgt:
Die Methode dumps() gibt einen str zurück und der Inhalt ist Standard-JSON. Ebenso kann die dump()-Methode JSON direkt in ein file_Object schreiben. Um JSON in ein
Python-Objekt zu deserialisieren, verwenden Sie „loads()“ oder die entsprechende „load()“-Methode. Erstere deserialisiert die JSON-Zeichenfolge und letztere liest die Zeichenfolge aus „file_Object“ und deserialisiert sie 🎜>Instanz
legt ein Objekt ab
data= { "广州市": { "番禺区": ["南村镇", "大石镇", "榄核镇"], "天河区": ["广州塔", "中信广场", "天河又一城"] } } s = json.dumps(data, sort_keys=True, indent=4, ensure_ascii=False) print(s)
#dumps: ein Objekt serialisieren sort_keys: nach Schlüssel sortieren Einzug: mit 4 Leerzeichen einrücken, Ausgabe ist lesbar, secure_ascii: kann serialisiert werden Nicht-ASCII-Code konvertieren (Chinesisch usw.)
dump: Ein Objekt in eine Datei serialisieren
Der erste Parameter von dump() ist das zu serialisierende Objekt, und der zweite Parameter ist das Handle der geöffneten Datei Öffnen Sie die Datei und fügen Sie Öffnen hinzu 运行此文件之后在统计目录下会有一个data.json文件
反序列化 load:从一个打开的文件句柄加载数据,注意打开的文件编码
loads: 从一个对象加载数据 不加ensure_ascii=False 结果是
加入ensure_ascii=Falsewith open("data.json", "w", encoding="UTF-8") as f:
s = json.dump(data, f, ensure_ascii=False)
with open("data.json", "r", encoding="UTF-8") as f:
r = json.load(f)
print(r)
a = json.loads(data)
print(a)
a = json.loads(data,ensure_ascii=False) 要注意
print(a)
a=json.loads(input("请输入添加的数据:"),enconding='utf-8')
print(a)
Das obige ist der detaillierte Inhalt vonDetaillierte Analyse der JSON-Serialisierung in Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!