我正在尝试将字典保存到流中,以便以后加载它。问题是,当我打印带有numpy数组的字典时,它会在numpy数组前面打印字符串“array”。例如:
import numpy as np
import pprint
a = {"hi":"greeting","celeryman":np.array([4,3,3])}
print(a)
pprint.pprint(a)
以上产生输出
{'celeryman': array([4, 3, 3]), 'hi': 'greeting'}
{'celeryman': array([4, 3, 3]), 'hi': 'greeting'}
所需的输出是
{'celeryman': [4, 3, 3], 'hi': 'greeting'}
我希望通过使用json.load可以毫无问题地阅读。
我是否必须为此编写自己的打印机?
答案 0 :(得分:0)
你必须通过 -
将numpy数组指定为列表a = {"hi":"greeting","celeryman":list(np.array([4,3,3]))}
如果您再次想要将作为值'celeryman'附加的列表初始化为numpy数组,那么 -
a=json.load('yourfile.json')
newnplist=np.array(a['celeryman'])