Dieser Artikel bietet Ihnen eine kurze Einführung in das JSON-Modul und das Pickle-Modul in Python. Ich hoffe, dass es für Freunde hilfreich ist.
Das JSON-Modul und Pickle in Python werden beide für die Serialisierung und Deserialisierung von Daten verwendet, und die von ihnen bereitgestellten Methoden sind dieselben: Dumps, Dump, Loads, Load
dumps(obj): Serialisiert das Objekt in str.
dump(obj, fp): Serialisieren Sie das Objekt in str und speichern Sie es in der Datei.
Deserialisieren Sie die (serialisierte) Zeichenfolge in ein Python-Objekt.
Deserialisieren Sie die (serialisierte) Zeichenfolge in der Datei in ein Python-Objekt.
zwischen ihnen, oder jedes hat seine eigenen Unterschiede. Jedes Vor- und Nachteile:
Die Zeichenfolge nach der JSON-Serialisierung liegt in einem universellen Format (gewöhnliche Zeichenfolge) vor. Verschiedene Plattformen und Sprachen können erkannt werden, aber die mit Pickle serialisierte Zeichenfolge kann nur von Python (Python-dediziertes Serialisierungsmodul) erkannt werden.
Die Objekte, die JSON serialisieren kann sind nur die grundlegenden Datentypen in Python, während pickle alle Datentypen in Python serialisieren kann.
Die Zeichenfolge nach der JSON-Serialisierung ist vom Texttyp (Sie können sie auch verstehen, nachdem Sie die Datei im Editor geöffnet oder mit Druckinhalt gedruckt haben). und die von pickle serialisierte Zeichenfolge sind binäre Stream-Daten (der Inhalt darin ist nach dem Öffnen von Notepad oder Drucken völlig unverständlich). Achten Sie daher beim Ausführen von Dateivorgängen darauf, welches Modul verwendet wird und ob es im B-Format geöffnet werden muss.
JSON benötigt weniger Speicherplatz, während Pickle mehr Speicherplatz benötigt.
>>> import pickle >>> dic = {'a': 111, 'b': 222, 'c': 333} >>> f = open('D:/pk_file.pk', 'wb') >>> lst = [1, 2, 4, 5] >>> # 将字典对象和列表对象序列化,并存入文件,文件名后缀自定义为.pk >>> pickle.dump(dic, f) >>> pickle.dump(lst, f) >>> f.close() >>> # 将文件中的Python对象按写入顺序读取出来,且一次读取一个对象 >>> pk_f = open('D:/pk_file.pk', 'rb') >>> result = pickle.load(pk_f) >>> type(result) <class 'dict'> >>> result {'a': 111, 'b': 222, 'c': 333} >>> other_result = pickle.load(pk_f) >>> type(other_result) <class 'list'> >>> other_result [1, 2, 4, 5] >>>
Das Obige ist der gesamte Inhalt davon Artikel: Weitere spannende Inhalte zu Python finden Sie in den Spalten
Python-Video-Tutorialund Python-Artikel-Tutorial auf der chinesischen PHP-Website! ! !
Das obige ist der detaillierte Inhalt vonEine kurze Einführung in das JSON-Modul und das Pickle-Modul in Python (mit Beispielen). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!