JSON Serialisierung von NumPy-Arrays
Wenn beim Laden der Webseite der Fehler „Array ist nicht JSON-serialisierbar“ auftritt, bedeutet dies, dass NumPy Das Array in der Django-Kontextvariablen kann nicht in ein JSON-Format konvertiert werden. JSON (JavaScript Object Notation) ist ein gängiges Datenformat für den Datenaustausch und erfordert, dass Daten in einer bestimmten Struktur vorliegen. NumPy-Arrays hingegen haben eine komplexere Struktur, die nicht direkt in JSON serialisiert werden kann.
Um dieses Problem zu beheben, können Sie die Methode „.tolist()“ für das NumPy-Array verwenden. Diese Methode wandelt das Array in eine verschachtelte Liste um, die dann in JSON serialisiert werden kann. Hier ist ein Beispiel:
<code class="python">import numpy as np import codecs, json a = np.arange(10).reshape(2, 5) # a 2 by 5 array b = a.tolist() # nested lists with the same data and indices file_path = "/path.json" ## your path variable json.dump(b, codecs.open(file_path, 'w', encoding='utf-8'), separators=(',', ':'), sort_keys=True, indent=4) ### this saves the array in .json format</code>
Um das Array zu „entjsonifizieren“, können Sie den folgenden Code verwenden:
<code class="python">obj_text = codecs.open(file_path, 'r', encoding='utf-8').read() b_new = json.loads(obj_text) a_new = np.array(b_new)</code>
Das obige ist der detaillierte Inhalt vonWie serialisiere ich NumPy-Arrays in JSON in Python?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!