如何在 Python 中將 NumPy 陣列序列化為 JSON?

Linda Hamilton
發布: 2024-11-03 14:18:03
原創
781 人瀏覽過

How to Serialize NumPy Arrays to JSON in Python?

JSON 序列化NumPy 陣列

當網頁載入過程中遇到錯誤「array is not JSON serialabilable」時,這表示NumPy Django 上下文變數中的陣列無法轉換為JSON 格式。 JSON(JavaScript Object Notation)是一種用於資料交換的通用資料格式,它要求資料具有特定的結構。另一方面,NumPy 數組具有更複雜的結構,無法直接序列化為 JSON。

要解決此問題,您可以在 NumPy 陣列上使用「.tolist()」方法。此方法將數組轉換為巢狀列表,然後可以將其序列化為 JSON。這是一個範例:

<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>
登入後複製

要「unjsonify」數組,您可以使用以下程式碼:

<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>
登入後複製

以上是如何在 Python 中將 NumPy 陣列序列化為 JSON?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板