如何检索由 numpy 保存的对象
How to retrieve an object saved by numpy
我通过 numpy.save() 保存了我的 class 的一个对象,我可以通过 numpy.load() 加载它,但我检索到的值是:[].
class SampleClass:
def __init__(self, y):
self.y = y
y=np.array([1,2,3])
x=SampleClass(y)
np.save("x",x, allow_pickle=True)
xx=np.load("x.npy")
此代码是示例,xx
值是 []。如何访问 y
(xx.y
) 的值?
'allow_pickle' 是 load
所必需的,而不是 save
。
In [2]: class SampleClass:
...:
...: def __init__(self, y):
...: self.y = y
...:
...:
...: y=np.array([1,2,3])
...: x=SampleClass(y)
...: np.save("x",x)
...: xx=np.load("x.npy", allow_pickle=True)
In [2]:
In [3]: xx
Out[3]: array(<__main__.SampleClass object at 0x000002583B8BCDC0>, dtype=object)
xx
是一个 0d 对象 dtype 数组。它有一个元素,可以用
提取
In [4]: xx.item()
Out[4]: <__main__.SampleClass at 0x2583b8bcdc0>
或:
In [5]: xx[()]
Out[5]: <__main__.SampleClass at 0x2583b8bcdc0>
()
索引匹配数组的 0d 形状。
我通过 numpy.save() 保存了我的 class 的一个对象,我可以通过 numpy.load() 加载它,但我检索到的值是:[
class SampleClass:
def __init__(self, y):
self.y = y
y=np.array([1,2,3])
x=SampleClass(y)
np.save("x",x, allow_pickle=True)
xx=np.load("x.npy")
此代码是示例,xx
值是 [y
(xx.y
) 的值?
'allow_pickle' 是 load
所必需的,而不是 save
。
In [2]: class SampleClass:
...:
...: def __init__(self, y):
...: self.y = y
...:
...:
...: y=np.array([1,2,3])
...: x=SampleClass(y)
...: np.save("x",x)
...: xx=np.load("x.npy", allow_pickle=True)
In [2]:
In [3]: xx
Out[3]: array(<__main__.SampleClass object at 0x000002583B8BCDC0>, dtype=object)
xx
是一个 0d 对象 dtype 数组。它有一个元素,可以用
In [4]: xx.item()
Out[4]: <__main__.SampleClass at 0x2583b8bcdc0>
或:
In [5]: xx[()]
Out[5]: <__main__.SampleClass at 0x2583b8bcdc0>
()
索引匹配数组的 0d 形状。