numpy.savez_compressed#

numpy.savez_compressed(file, *args, allow_pickle=True, **kwds)[源代码]#

将多个数组以压缩的 .npz 格式保存到单个文件中.

提供数组作为关键字参数,以将它们按相应的名称存储在输出文件中: savez_compressed(fn, x=x, y=y) .

如果将数组指定为位置参数,即 savez_compressed(fn, x, y) ,则它们的名称将为 arr_0 , arr_1 等.

参数:
filefile, str, or pathlib.Path

将要保存数据的文件名(字符串)或打开的文件(类文件对象).如果 file 是字符串或 Path,则 .npz 扩展名将附加到文件名,如果它还不存在.

args参数,可选

要保存到文件的数组. 请使用关键字参数(请参阅下面的 kwds )为数组分配名称. 指定为 args 的数组将被命名为"arr_0","arr_1",依此类推.

allow_picklebool,可选

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

kwds关键字参数,可选

要保存到文件的数组. 每个数组将使用其相应的关键字名称保存到输出文件.

返回:
None

参见

numpy.save

以 NumPy 格式将单个数组保存到二进制文件.

numpy.savetxt

将数组作为纯文本保存到文件.

numpy.savez

将多个数组保存到未压缩的 .npz 文件格式

numpy.load

加载 savez_compressed 创建的文件.

注释

.npz 文件格式是压缩存档文件,这些文件以它们包含的变量命名.该存档使用 zipfile.ZIP_DEFLATED 压缩,并且存档中的每个文件都包含一个 .npy 格式的变量.有关 .npy 格式的描述,请参见 numpy.lib.format .

使用 load 打开保存的 .npz 文件时,将返回一个 NpzFile 对象. 这是一个类似字典的对象,可以查询其数组列表(使用 .files 属性)以及数组本身.

示例

>>> import numpy as np
>>> test_array = np.random.rand(3, 2)
>>> test_vector = np.random.rand(4)
>>> np.savez_compressed('/tmp/123', a=test_array, b=test_vector)
>>> loaded = np.load('/tmp/123.npz')
>>> print(np.array_equal(test_array, loaded['a']))
True
>>> print(np.array_equal(test_vector, loaded['b']))
True