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 时,此选项将被忽略。在这种情况下,该文件根据定义是可信的,并且限制是不必要的。
方法