numpy.lib.npyio.NpzFile#

class numpy.lib.npyio.NpzFile(fid)[源代码]#

一个类似字典的对象,在构造时提供的压缩档案中的文件进行延迟加载.

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

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

参数:
fid文件, str, 或 pathlib.Path

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

own_fidbool, 可选

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])
属性:
fileslist of str

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

zipZipFile 实例

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

fBagObj 实例

一个可以执行属性操作的对象,作为对 NpzFile 实例本身进行 getitem 访问的替代方法.

allow_picklebool, 可选

允许加载序列化数据.默认:False

在 1.16.3 版本发生变更: 在响应 CVE-2019-6446 时,默认设置为 False.

pickle_kwargsdict, 可选

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

max_header_sizeint, 可选

允许的最大头文件大小.较大的头文件可能不安全加载,因此需要显式传递一个较大的值.详情请参见 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() 返回一个类似集合的对象,提供对值的视图