numpy.savez_compressed

numpy.savez_compressed(file, *args, *kwds)[source]#

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

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

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

参数:
file文件、字符串或 pathlib.Path

文件名 (字符串) 或打开的文件 (文件类对象),数据将保存在其中。如果文件是字符串或路径,则将 .npz 扩展名附加到文件名 (如果尚未添加)。

args可选参数

要保存到文件中的数组。请使用关键字参数 (参见 kwds 下面) 为数组分配名称。作为 args 指定的数组将命名为“arr_0”、“arr_1” 等。

kwds可选关键字参数

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

返回值:

另见

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