pickle
使用pickle保存变量时,如果变量过大,会无法保存文件。
numpy.save
保存一个变量
numpy.savez
可以一次保存多个变量 但是numpy.savez只会保存numpy arrays。
- 如果保存字典,载入后,变量类型为
type(arrays['header'])
,在键值后加[()]
可将其转化为字典类型
使用numpy.savez保存字典后读取的问题
numpy中的savez()同时保存数组、字符串、字典数据
parsing_info = np.load('info.npz',allow_pickle=True)
print(info.files)
index1= info['index'][()]
num1 = info['num'][()]
weight1= info['weight'][()]
- 读取变量是需要加
allow_pickle=True
或者pip install numpy=1.16.2
否则报错raise ValueError("Object arrays cannot be loaded when " ValueError: Object arrays cannot be loaded when allow_pickle=False
错误ValueError: Object arrays cannot be loaded when allow_pickle=False的解决