numpy.
savez
(file,* args,** kwds )[源代码] ¶将多个阵列以未压缩的.npz
格式保存到单个文件中。
如果传入的参数没有关键字,则文件中相应的变量名称.npz
为'arr_0','arr_1'等。如果给出了关键字参数,则.npz
文件中的相应变量名称将与关键字名称匹配。
文件名(字符串)或打开的文件(类似文件的对象)将在其中保存数据。如果file是字符串或路径,则
.npz
扩展名将附加到文件名(如果尚不存在)。
保存到文件的数组。由于Python不可能知道外部数组的名称savez
,因此将使用名称“ arr_0”,“ arr_1”等来保存数组。这些参数可以是任何表达式。
保存到文件的数组。数组将与关键字名称一起保存在文件中。
也可以看看
save
将单个数组以NumPy格式保存到二进制文件中。
savetxt
将数组以纯文本格式保存到文件中。
savez_compressed
将多个阵列保存到压缩.npz
存档中
笔记
该.npz
文件格式是它们所包含的变量命名的文件的压缩文档。档案没有被压缩,并且档案中的每个文件都包含一个.npy
格式可变的变量。有关.npy
格式的说明,请参见numpy.lib.format
。
当打开保存.npz
与文件load
一个NpzFile对象返回。这是一个类似于字典的对象,可以查询其数组列表(带有.files
属性)以及数组本身。
保存字典时,字典键将成为ZIP存档中的文件名。因此,密钥应为有效的文件名。例如,避免以/
或开头的键.
。
例子
>>> from tempfile import TemporaryFile
>>> outfile = TemporaryFile()
>>> x = np.arange(10)
>>> y = np.sin(x)
savez
与* args一起使用时,将使用默认名称保存数组。
>>> np.savez(outfile, x, y)
>>> _ = outfile.seek(0) # Only needed here to simulate closing & reopening file
>>> npzfile = np.load(outfile)
>>> npzfile.files
['arr_0', 'arr_1']
>>> npzfile['arr_0']
array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
savez
与** kwds一起使用时,数组将与关键字名称一起保存。
>>> outfile = TemporaryFile()
>>> np.savez(outfile, x=x, y=y)
>>> _ = outfile.seek(0)
>>> npzfile = np.load(outfile)
>>> sorted(npzfile.files)
['x', 'y']
>>> npzfile['x']
array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])