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

使用Python zipfile生成的压缩包Windows无法解压求助

问题解决方法

你的代码主要有两个问题导致Windows无法解压生成的压缩包:

  1. 压缩包条目包含上级目录路径
    原代码中使用archive.write(filename)时,会将文件的完整相对路径(../Binary/titanic_train.csv)作为压缩包内的文件路径。Windows自带的解压工具对包含../(上级目录标识)的条目兼容性极差,会直接判定压缩包无效。

  2. 重复添加同名文件
    你两次添加了同一个文件,压缩包内会出现两个完全同名的条目,部分解压工具处理这种冲突时也会报错。

修改后的代码:

import zipfile

filenames = [r"..\Binary\titanic_train.csv"
             , r"..\Binary\titanic_train.csv"]

with zipfile.ZipFile(r"..\Binary\multiple_files.zip", mode="w") as archive:
    for idx, filename in enumerate(filenames):
        # 指定压缩包内的文件名,去掉上级路径并给重复文件重命名
        arcname = f"titanic_train_{idx+1}.csv"
        archive.write(filename, arcname=arcname)

如果不需要重复文件,直接去掉列表里的重复项即可:

import zipfile

filenames = [r"..\Binary\titanic_train.csv"]

with zipfile.ZipFile(r"..\Binary\multiple_files.zip", mode="w") as archive:
    archive.write(filenames[0], arcname="titanic_train.csv")

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.29 12:38:08