JSON (JavaScript Object Notation) ist ein leichtes Datenaustauschformat, das der von der European Computer Association festgelegten JavaScript-Spezifikation (als ECMAScript bezeichnet) folgt.
JSON ist für Menschen leicht zu lesen und zu schreiben und kann auch von Maschinen leicht analysiert und generiert werden. Daher wird es häufig als Standardsprache für die Übertragung von Informationen zwischen Netzwerken verwendet und Programme, beispielsweise zwischen Clients und Servern. Die Informationsinteraktion wird im JSON-Format bereitgestellt.
Einfach ausgedrückt kann JSON einen durch JavaScript-Objekte dargestellten Datensatz in ein String-Format konvertieren, um die Übertragung dieses Strings über das Netzwerk und zwischen Programmen zu erleichtern. Und bei Bedarf kann es auch in ein von der Programmiersprache unterstütztes Datenformat konvertiert werden. In diesem Abschnitt wird hauptsächlich die Implementierung der Konvertierung zwischen JSON-Daten und Python-Datentypen vorgestellt.
Die Python-Sprache verfügt über ein integriertes Modul, das auf die Verarbeitung von JOSN-Daten spezialisiert ist – das Jons-Modul. Mit diesem Modul kann die Konvertierung zwischen JSON- und Python-Datenformaten durchgeführt werden.
Diese Methode kann Zeichenfolgen im JSON-Format in Python-Objekte (z. B. Listen, Wörterbücher, Tupel, Ganzzahlen und Gleitkommatypen) konvertieren. Die am häufigsten verwendete Methode ist die Konvertierung in Wörterbuchtypen. Das Beispiel sieht wie folgt aus:
# coding:utf8 import json #JOSN字符串 website_info='{"name" : "CSDN","PV" : "2000万","UV" : "800万","create_time" : "1999年"}' py_dict=json.loads(website_info) print("python字典数据格式:%s;数据类型:%s"% (py_dict,type(py_dict)))
Ausgabeergebnis:
Python-Wörterbuch-Datenformat: {'name': 'CSDN', 'PV': '20 million', 'UV': '8 million', 'create_time' : '1999 Jahr'}; Datentyp:
Hinweis: Der JSON-String im obigen Beispiel sieht dem Python-Wörterbuch sehr ähnlich, aber sein Wesen ist ein anderer String-Typ. während das Python-Wörterbuch vom Typ dict ist.
Es kann Python-Objekte (Wörterbücher, Listen usw.) in JSON-Strings konvertieren und die konvertierten Daten in Dateien im JSON-Format schreiben, daher muss diese Methode auf Dateistream-Objekten ausgeführt werden. Beispielsweise ist es nach Verwendung eines Crawler-Programms zum Abschließen der Datenerfassung manchmal erforderlich, die Daten im JSON-Format zu speichern. In diesem Fall wird die Methode json.dump() verwendet. Das Syntaxformat lautet wie folgt:
json.dump(object,f,inden=0,ensure_ascii=False)
The Die Parameterbeschreibung lautet wie folgt:
Objekt: Python-Datenobjekte wie Wörterbücher, Listen usw.
f: Dateistreamobjekt, d. h. Dateihandle.
indent: Gespeicherte Daten formatieren, um JSON-Strings leichter lesbar zu machen.
ensure_ascii: Ob ASCII-Kodierung verwendet werden soll, wenn Chinesisch in den Daten angezeigt wird, muss dies auf „Falsch“ gesetzt werden.
Beispielbeispiel lautet wie folgt:
import json ditc_info={"name" : "CSDN","PV" : "2000万","UV" : "800万","create_time" : "1999年"} with open("web.josn","a") as f: json.dump(ditc_info,f,ensure_ascii=False)
Öffnen Sie die Datei web.json. Ihr Inhalt lautet wie folgt:
{ "name": "CSDN", "PV": "2000万", "UV": "800万", "create_time": "1999年" }
Sie können die Python-Liste auch in einen JSON-String konvertieren und wie folgt in einer JSON-Datei speichern:
import json item_list = [] item = {'website': 'CSDN', 'url': "www.CSDN.net"} for k,v in item.items(): item_list.append(v) with open('info_web.json', 'a') as f: json.dump(item_list, f, ensure_ascii=False)
Öffnen Sie die Datei info_web.json. Ihr Inhalt lautet wie folgt:
["CSDN", "www.CSDN.net"]
Diese Methode wird zum Betrieb der Datei verwendet stream-Objekt, unterscheidet sich jedoch von dump() und ist genau das Gegenteil. Es bedeutet, einen JSON-String aus einer JSON-Datei zu lesen und den gelesenen Inhalt in ein Python-Objekt zu konvertieren. Anwendungsbeispiele sind wie folgt:
import json site = {'name':'CSDN',"url":"www.CSDN.net"} filename = 'website.json' with open (filename,'w') as f: json.dump(site,f,ensure_ascii=False) with open (filename,'r') as f: print(json.load(f))
Die Ausgabeergebnisse lauten wie folgt:
{'name': 'CSDN', 'url': 'www.CSDN.net'}
Diese Methode kann Python-Objekte in eine JSON-Zeichenfolge konvertieren. Das Beispiel sieht wie folgt aus:
import json #python字典 item = {'website': 'CSDN', 'rank': 1} # json.dumps之后 item = json.dumps(item,ensure_ascii=False) print('转换之后的数据类型为:',type(item)) print(item)
Das Ausgabeergebnis ist wie folgt:
Der konvertierte Datentyp ist:
{"website": "CSDN", "url": "www. CSDN.net"}
Abschließend wird eine kurze Zusammenfassung der oben genannten Methoden gegeben, wie in der folgenden Tabelle dargestellt:
Methode | Funktion |
---|---|
json.dumps() | Konvertieren Sie Python-Objekte in JSON-Strings. |
json.loads() | JSON-String in Python-Objekt konvertieren. |
json.dump() | Konvertieren Sie Objekte in Python in JSON-Strings und speichern Sie sie in Dateien. |
json.load() | Konvertieren Sie die JSON-Zeichenfolge in der Datei in ein Python-Objekt und extrahieren Sie es. |
Zusammenfassend lässt sich sagen, dass json.load() und json.dump() auf Dateistreamobjekten arbeiten und die Lese- und Schreibvorgänge von JSON-Dateien realisieren, während json.loads() und json.dumps() auf Is arbeiten ein Python-Objekt oder eine JOSN-Zeichenfolge.
Das obige ist der detaillierte Inhalt vonWas sind die gängigen Methoden des Python-JSON-Moduls?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!