import numpy as np
import pickle
1.dst = numpy.load(file, mmap_mode=None, allow_pickle=False, fix_imports=True, encoding=‘ASCII’)
f = open("a", mode="rb")
# 用文件对象
a = np.load(f, allow_pickle=True)
a
{'age': 22, 'sex': 'male', 'height': 180}
# 用文件名
x = np.load("q.npy")
x
array([1, 2, 3])
numpy.save(file, arr, allow_pickle=True)
# 直接用文件名保存数组
a = np.array([1, 2, 3])
np.save("q", a)
# 用文件对象保存
f = open("arr", mode="wb")
np.save(f, a)
numpy.savez(file, *args, **kwds)
numpy.savez()会将保存的多个数组以字典形式保存,每个数组都会默认给一个key,从“arr_0”开始。也可以在传入多个数组时用关键字自己指定其key值。通过obj = np.load(npz文件)加载后,可以通过obj.files属性查看所有保存数组的key值,类似于dict.keys。并且可以通过key值索引保存的数组。
j = np.array([1, 5, 8])
k = np.array([11, 31, 9])
l = np.array([67, 40, 23])
# 用默认key值
np.savez("arr3", j, k, l)
# 要写出完整的文件名,包括后缀
arr3 = np.load("arr3.npz")
print(arr3.files)
print(arr3["arr_0"])
['arr_0', 'arr_1', 'arr_2']
[1 5 8]
# 指定key值
np.savez("arr3_d", embed=j, ot=k, qq=l)
arr3_d = np.load("arr3_d.npz")
arr3_d.files
['embed', 'ot', 'qq']