gpt4 book ai didi

Python:将文件夹中的文件写入zipfile并压缩

转载 作者:太空宇宙 更新时间:2023-11-04 01:01:18 26 4
gpt4 key购买 nike

我正在尝试使用 python 压缩文件夹中的所有文件。最终目标是在 Windows 任务计划程序中实现这一点。

import os
import zipfile

src = ("C:\Users\Blah\Desktop\Test")
os.chdir=(src)
path = (r"C:\Users\Blah\Desktop\Test")
dirs = os.listdir(path)
zf = zipfile.ZipFile("myzipfile.zip", "w", zipfile.ZIP_DEFLATED,allowZip64=True)
for file in dirs:
zf.write(file)

现在当我运行这个脚本时我得到了错误:

WindowsError: [Error 2] The system cannot find the file specified: 'test1.bak'

我知道它在那里,因为它找到了它找不到的文件的名称。

我想知道为什么它没有压缩以及为什么会发生此错误。

有很大的 .bak 文件,因此它们可以在 4GB 以上运行,这就是我允许 64 位的原因。

编辑:成功感谢大家回答我的问题这里是我的最终代码,希望这对我 future 的谷歌员工有帮助:

import os
import zipfile
path = (r"C:\Users\vikram.medhekar\Desktop\Launch")
os.chdir(path)
dirs = os.listdir(path)
zf = zipfile.ZipFile("myzipfile.zip", "w", zipfile.ZIP_DEFLATED,allowZip64=True)
for file in dirs:
zf.write(os.path.join(file))
zf.close()

最佳答案

os.listdir(path) 返回相对于路径的名称 - 你需要使用 zf.write(os.path.join(path, file)) 来告诉它是文件的完整位置。

关于Python:将文件夹中的文件写入zipfile并压缩,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32744897/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com