我有几个巨大的数组,我使用np.save和np.load将每个数组或字典保存在一个文件中然后重新加载它们,以便不再计算它们如下所示。
save(join(dir, "ListTitles.npy"), self.ListTitles)
self.ListTitles = load(join(dir,"ListTitles.npy"))
问题在于,当我尝试之后使用它们时,我会遇到错误(如找不到字段名称)或未确定对象的len()。 例如:
len(self.ListTitles) or when accessing a field of a dictionary return an error.
我不知道如何解决这个问题。因为当我只使用这个代码时,它完美地运行:
M = array([[1,2,0], [3,4,0], [3,0,1]])
vector = zeros(3529)
save("M.npy", M)
save("vector.npy", vector)
vector = load("vector.npy")
B = load("M.npy")
print len(B)
print len(vector)
答案 0 :(得分:3)
numpy
save
和load
函数用于numpy
数组,不适用于{{1}等常规Python数据}}秒。使用dict
模块保存到文件,并从文件重新加载大多数类型的Python数据结构(有pickle
之类的替代品,但不在标准库中 - 我建议坚持标准dill
,除非它给你特定的问题。)