要将带有numpy数组的嵌套字典转换为JSON并返回,可以按照以下步骤进行操作:
import json
import numpy as np
data = {
'key1': 'value1',
'key2': np.array([1, 2, 3]),
'key3': {
'nested_key1': 'nested_value1',
'nested_key2': np.array([4, 5, 6])
}
}
class NumpyEncoder(json.JSONEncoder):
def default(self, obj):
if isinstance(obj, np.ndarray):
return obj.tolist() # 将numpy数组转换为Python列表
return json.JSONEncoder.default(self, obj)
json_data = json.dumps(data, cls=NumpyEncoder)
python_data = json.loads(json_data)
完整的代码示例如下:
import json
import numpy as np
data = {
'key1': 'value1',
'key2': np.array([1, 2, 3]),
'key3': {
'nested_key1': 'nested_value1',
'nested_key2': np.array([4, 5, 6])
}
}
class NumpyEncoder(json.JSONEncoder):
def default(self, obj):
if isinstance(obj, np.ndarray):
return obj.tolist()
return json.JSONEncoder.default(self, obj)
json_data = json.dumps(data, cls=NumpyEncoder)
python_data = json.loads(json_data)
print(json_data)
print(python_data)
这样,你就可以将带有numpy数组的嵌套字典转换为JSON并返回了。
领取专属 10元无门槛券
手把手带您无忧上云