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

如何使用ZipFile修改压缩文件的输出存储文件夹?

问题原因

你创建ZipFile对象时仅传入了压缩包的文件名,没有拼接目标存储路径DirectoryDestination,因此压缩包默认会保存在Python脚本执行的当前工作目录,不会自动存入你指定的D:\Location2路径下。

修复方案

构造压缩包文件名时拼接目标文件夹路径即可,推荐使用os.path.join处理路径拼接,避免手动拼接斜杠导致的格式错误,同时建议使用with上下文管理器管理ZipFile对象,避免文件句柄泄漏,修改后的代码如下:

import os
import openpyxl
from zipfile import ZipFile, ZIP_DEFLATED

DirectorySource = r'D:\Location1'
DirectoryDestination = r'D:\Location2'
# 自动创建目标文件夹,避免路径不存在报错
os.makedirs(DirectoryDestination, exist_ok=True)

data = openpyxl.load_workbook(r'D:\File_List.xlsx')
df = data['Sheet1']
        
for i in range(2, df.max_row + 1):
    cell_obj = df.cell(row=i, column = 1)
    filename = f"{cell_obj.value}.txt"
    source_file_path = os.path.join(DirectorySource, filename)
    # 拼接目标压缩包完整存储路径
    zip_file_path = os.path.join(DirectoryDestination, f"{cell_obj.value}.zip")
    with ZipFile(zip_file_path, mode='w') as zip_obj:
        zip_obj.write(source_file_path, filename, compress_type=ZIP_DEFLATED)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 03:15:05