numpy.save

numpy.save(file, arr, allow_pickle=True, fix_imports=True)[源代码]

将数组保存到numpy中的二进制文件 .npy 格式。

参数
file文件、str或pathlib.path

保存数据的文件或文件名。如果文件是文件对象,则文件名不变。如果文件是字符串或路径,则 .npy 如果文件名还没有扩展名,则扩展名将附加到文件名。

arrarray_like

要保存的数组数据。

allow_pickle可选的布尔

允许使用python pickles保存对象数组。不允许pickle的原因包括安全性(加载pickled数据可以执行任意代码)和可移植性(pickled对象可能无法在不同的python安装上加载,例如,如果存储对象需要不可用的库,并且并非所有pickled数据都在python 2和python 3之间兼容)。默认值:真

fix_imports可选的布尔

只有在强制以与python 2兼容的方式处理python 3上对象数组中的对象时才有用。如果 fix_imports 是的,pickle将尝试将新的python 3名称映射到python 2中使用的旧模块名称,以便pickle数据流可以用python 2读取。

参见

savez

将多个数组保存到 .npz 档案文件

savetxt, load

笔记

关于 .npy 格式,参见 numpy.lib.format .

保存到文件中的任何数据都会附加到文件末尾。

实例

>>> from tempfile import TemporaryFile
>>> outfile = TemporaryFile()
>>> x = np.arange(10)
>>> np.save(outfile, x)
>>> _ = outfile.seek(0) # Only needed here to simulate closing & reopening file
>>> np.load(outfile)
array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
>>> with open('test.npy', 'wb') as f:
...     np.save(f, np.array([1, 2]))
...     np.save(f, np.array([1, 3]))
>>> with open('test.npy', 'rb') as f:
...     a = np.load(f)
...     b = np.load(f)
>>> print(a, b)
# [1 2] [1 3]