numpy.lib.npyio.NpzFile#

class numpy.lib.npyio.NpzFile(fid)[source]#

一个类似字典的对象,用于延迟加载在构造时提供的压缩存档中的文件。

NpzFile 用于加载 NumPy .npz 数据存档格式的文件。它假设存档中的文件具有 .npy 扩展名,其他文件将被忽略。

数组和文件字符串会在使用 obj['key'] 获取项目或使用 obj.f.key 进行属性查找时延迟加载。可以使用 obj.files 获取所有文件(不带 .npy 扩展名)的列表,并使用 obj.zip 获取 ZipFile 对象本身。

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

要打开的压缩存档。这可以是类文件对象或包含存档路径的字符串。

own_fid布尔值,可选

NpzFile 是否应该关闭文件句柄。要求 fid 是类文件对象。

示例

>>> import numpy as np
>>> from tempfile import TemporaryFile
>>> outfile = TemporaryFile()
>>> x = np.arange(10)
>>> y = np.sin(x)
>>> np.savez(outfile, x=x, y=y)
>>> _ = outfile.seek(0)
>>> npz = np.load(outfile)
>>> isinstance(npz, np.lib.npyio.NpzFile)
True
>>> npz
NpzFile 'object' with keys: x, y
>>> sorted(npz.files)
['x', 'y']
>>> npz['x']  # getitem access
array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
>>> npz.f.x  # attribute lookup
array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
属性:
files字符串列表

存档中所有具有 .npy 扩展名的文件的列表。

zipZipFile 实例

使用压缩存档初始化的 ZipFile 对象。

fBagObj 实例

一个可以在其上执行属性的对象,作为对 NpzFile 实例本身进行获取项目的替代方法。

allow_pickle布尔值,可选

允许加载腌制数据。默认值:False

版本 1.16.3 中的变化: 响应 CVE-2019-6446 将默认值设置为 False。

pickle_kwargs字典,可选

传递给 pickle.load 的其他关键字参数。这些参数仅在使用 Python 3 加载在 Python 2 上保存的对象数组时有用。

max_header_size整数,可选

允许的最大标头大小。大型标头可能不安全加载,因此需要显式传递更大的值。有关详细信息,请参阅 ast.literal_eval。当传递 allow_pickle 时,此选项将被忽略。在这种情况下,该文件根据定义是可信的,并且限制是不必要的。

方法

close()

关闭文件。

get(key[, default])

D.get(k,[,d]) 如果 k 在 D 中则返回 D[k],否则返回 d。

items()

D.items() 返回一个类似集合的对象,提供对项目的视图

keys()

D.keys() 返回一个类似集合的对象,提供对键的视图

values()

D.values() 返回一个类似集合的对象,提供对值的视图