gpt4 book ai didi

python - os.walk 某些文件类型到现有的 ZipFile?

转载 作者:行者123 更新时间:2023-12-05 05:28:46 25 4
gpt4 key购买 nike

基本上,我需要将文件夹中某种类型的所有文件复制到最高级别的 ZipFile 中(因此不在文件夹中)。

例如,我有一个文件夹“A Folder”,该文件夹中有大量 .png 文件。我想将所有这些文件复制到现有的 ZipFile 中。目前我也只能获取要复制的文件夹,所以我最终得到的是 'ZipFile\A Folder\lots of .pngs' 而不是 'ZipFile\lots of .pngs'

我用来移动文件和文件夹的代码是:

for root, dirs, files in os.walk('A Folder'):
for f in files:
fname = os.path.join(root, f)
myzip.write(fname)

另一个问题,您将如何从 ZipFile 中删除文件夹?

最佳答案

根据 python 文档,zipfile.write()方法支持第二个参数,即目标名称(即存档中的名称),尝试像这样使用它:

for root, dirs, files in os.walk('A Folder'):
for f in files:
fname = os.path.join(root, f)
new_path = os.path.normpath(fname.replace('A Folder', ''))
myzip.write(fname, new_path)

关于python - os.walk 某些文件类型到现有的 ZipFile?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7402200/

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