发生的事情是我(错误地)使用命令 numpy.save()
保存了字典(没有显示错误消息),现在我需要恢复字典中的数据。当我用 numpy.load()
加载它时,它的类型为 (numpy.ndarray
) 并且是 0-d,所以它不再是字典,我可以t 访问其中的数据,0-d 数组是不可索引的,所以做类似
mydict = numpy.load('mydict')
mydict[0]['some_key']
不起作用。我也试过了
recdict = dict(mydict)
但这也没有用。
为什么当我用 numpy.save()
保存字典时 numpy 没有警告我?
有没有办法恢复数据?
提前致谢!
最佳答案
使用 mydict.item()
以 Python 标量的形式获取数组元素。
>>> import numpy as np
>>> np.save('/tmp/data.npy',{'a':'Hi Mom!'})
>>> x=np.load('/tmp/data.npy')
>>> x.item()
{'a': 'Hi Mom!'}
关于python - 从 0-d numpy 数组中恢复字典,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8361561/