Referenzseite: [Einführung in Python] Umgang mit Daten im JSON-Format
Beim Datenaustausch mit einer Webanwendung können Daten im Format "JSON" ausgetauscht werden. JSON wird in verschiedenen Sprachen wie C und JAVA verwendet, und Python kann natürlich auch damit umgehen. Dieses Mal werde ich die Grundlagen der Arbeit mit JSON in Python behandeln.
Inhaltsverzeichnis 1 [Was ist JSON](## Was ist JSON) 2 [JSON behandeln](## JSON behandeln) 2.1 [Lesen einer JSON-Datei](## Lesen einer JSON-Datei) 2.2 [JSON konvertieren](## JSON konvertieren) 2.3 [JSON schreiben](## JSON schreiben)
Zunächst werde ich erklären, was für ein Format JSON ist. JSON ist eine Abkürzung für "JavaScript Object Notation" und kann als "Datenformat basierend auf der JavaScript-Sprachnotation" bezeichnet werden. Die Notation basiert jedoch nur auf JavaScript und kann in vielen anderen Sprachen verwendet werden. In JSON werden eine Zahl und ein Schlüsselpaar, das der Name der Zahl ist, mit einem Doppelpunkt gepaart, der durch ein Komma getrennt ist, und das Ganze wird in Wellenklammern ausgedrückt.
{
"book1":{
"title": "Python Beginners",
"year": 2005 ,
"page": 399
},
"book2":{
"title": "Python Developers",
"year": 2006 ,
"page": 650
}
}
Nun wollen wir sehen, wie JSON-formatierte Daten in Python tatsächlich verarbeitet werden.
Um mit einer JSON-Datei arbeiten zu können, müssen Sie zuerst die Daten aus der JSON-Datei lesen. Das Verfahren zum Lesen einer JSON-Datei lautet (1) Öffnen Sie die JSON-Datei (2) Lesen Sie die geöffnete Datei als JSON Es gibt zwei Schritte. Insbesondere wird es wie folgt beschrieben.
import json #Muss erforderlich sein
Variable 1= open(‘Pfad der zu lesenden JSON-Datei’, ‘r’) #Hier ist(1)
Variable 2= json.load(Variable 1) #Hier ist(2)
Um JSON-bezogene Funktionen verwenden zu können, müssen Sie zuerst das JSON-Modul importieren. Vergiss nicht. Öffnen Sie dann die JSON-Datei als gelesene Datei. Dies entspricht einem normalen Dateivorgang. Verwenden Sie dann die Ladefunktion, um die geladene JSON-Datei als JSON-Objekt zu speichern. Sie haben jetzt den JSON geladen.
Wenn Sie eine JSON-Datei mit der Ladefunktion laden, wird sie zur einfacheren Verwendung in Python als Wörterbuch gespeichert. Der Wörterbuchtyp ist praktisch, da Sie Elemente leicht abrufen können, ihn aber manchmal als JSON-formatierte Zeichenfolge behandeln möchten. In diesem Fall konvertieren Sie vom Wörterbuchtyp in eine Zeichenfolge im JSON-Format. Verwenden Sie die Funktion dumps, um vom Wörterbuchtyp in eine Zeichenfolge im JSON-Format zu konvertieren.
import json
Variable 1= json.dumps(Variable 2) #Variable 2 は辞書型
Dumps ist auch eine Funktion des JSON-Moduls. Importieren Sie daher das JSON-Modul, bevor Sie es verwenden.
dumps ist eine Funktion, die einen Wörterbuchtyp als Argument verwendet, ihn in eine Zeichenfolge konvertiert und zurückgibt.
import json
f = open('test.json', 'r')
json_dict = json.load(f)
print('json_dict:{}'.format(type(json_dict)))
print('-----Konvertieren Sie vom Wörterbuchtyp in eine Zeichenfolge im JSON-Format-----')
json_str = json.dumps(json_dict)
print('json_str:{}'.format(type(json_str)))
Ausführungsergebnis
json_dict: —– Vom Wörterbuchtyp in eine Zeichenfolge im JSON-Format konvertieren —– json_str:
Im Gegenteil, Sie können auch eine JSON-formatierte Zeichenfolge in einen Wörterbuchtyp konvertieren. Verwenden Sie die Ladefunktion des JSON-Moduls zur Konvertierung.
import json
- Da es das gleiche wie im obigen Beispiel ist, wird es weggelassen.
json_dict2 = json.loads(json_str)
print(‘json_dict2:{}’.format(type(json_dict2)))
Ausführungsergebnis
json_dict: —– Vom Wörterbuchtyp in eine Zeichenfolge im JSON-Format konvertieren —– json_str: —– Konvertieren von einer Zeichenfolge im JSON-Format in einen Wörterbuchtyp —– json_dict2: Schreiben Sie JSON
Von Python verarbeitete JSON-Daten können in eine Datei geschrieben werden. In Datei schreiben Verwenden Sie nur die Dump-Funktion des JSON-Moduls. Bitte beachten Sie, dass es sich nicht um Dumps handelt.
import json
Variable 1= open(‘Dateipfad schreiben’, ‘w’) #Öffnen Sie die zu schreibende Datei
json.dump(Variable 2,Variable 1) #Variable 2 は辞書型
dump verwendet die Variable des Wörterbuchtyps, die Sie schreiben möchten, und die Datei, in die geschrieben werden soll, als Argumente. Sie können eine JSON-formatierte Zeichenfolge mit der Schreibfunktion wie beim normalen Schreiben von Dateien schreiben. Wenn Sie jedoch einen Wörterbuchtyp schreiben möchten, muss diese Methode nicht einzeln konvertiert werden, sodass dies einfach ist. Lassen Sie uns zusammenfassend einen Blick auf den Ablauf der Liste werfen, in der die folgende JSON-Datei gelesen, in eine Zeichenfolge konvertiert, der Wörterbuchtyp erneut erstellt und in eine andere JSON-Datei geschrieben wird.
test.json
{
"book1":{
"title":"Python Beginners",
"year": 2005 ,
"page": 399
},
"book2":{
"title": "Python Developers",
"year": 2006 ,
"page": 650
}
}
import json
#JSON-Datei lesen
f = open('test.json', 'r')
json_dict = json.load(f)
print('json_dict:{}'.format(type(json_dict)))
#Konvertierung von JSON-Daten
print('-----Konvertieren Sie vom Wörterbuchtyp in eine Zeichenfolge im JSON-Format-----')
json_str = json.dumps(json_dict)
print('json_str:{}'.format(type(json_str)))
print('-----Konvertieren Sie eine Zeichenfolge im JSON-Format in einen Wörterbuchtyp-----')
json_dict2 = json.loads(json_str)
print('json_dict2:{}'.format(type(json_dict2)))
#JSON-Daten schreiben
f2 = open('test2.json', 'w')
json.dump(json_dict2, f2)
Ausführungsergebnis
json_dict: —– Vom Wörterbuchtyp in eine Zeichenfolge im JSON-Format konvertieren —– json_str: —– Konvertieren von einer Zeichenfolge im JSON-Format in einen Wörterbuchtyp —– json_dict2: test2.json {“book2″: {“year”: 2006, “title”: “Python Developers”, “page”: 650}, “book1″: {“year”: 2005, “title”: “Python Beginners”, “page”: 399}}
Recommended Posts