You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何判断经np.load加载的.npz文件是否为压缩文件?

判断.npz文件是否经过压缩的方法

方法1:通过zipfile模块检查文件压缩类型

.npz本质是标准ZIP归档文件:np.savez生成的npz内数组文件采用未压缩的ZIP_STORED格式,np.savez_compressed生成的则使用ZIP_DEFLATED压缩格式。可以用Python内置的zipfile模块直接解析判断:

import zipfile

def is_npz_compressed(npz_path):
    with zipfile.ZipFile(npz_path, 'r') as zf:
        for info in zf.infolist():
            if info.compress_type == zipfile.ZIP_DEFLATED:
                return True
            elif info.compress_type == zipfile.ZIP_STORED:
                return False
    return False

传入你的npz文件路径即可得到结果。如果已通过np.load加载文件,可通过加载后的对象.filename获取原始文件路径(需确保加载时未禁用相关属性)。

方法2:对比文件大小(快速粗略判断)

相同数组内容的前提下,np.savez_compressed生成的文件体积会远小于np.savez的产物,比如包含大数组的npz,压缩后大小可能仅为未压缩版本的几分之一,可通过文件管理器直接对比判断。

注意事项

用np.load加载后,内存中的数组对象不会保留是否来自压缩文件的标记,必须直接操作原始.npz文件才能完成判断。

内容的提问来源于stack exchange,提问作者ACitronella

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.15 13:24:52