Zip 多个文件夹 - Python
我正在用 python 压缩多个文件夹 当我运行代码时,它创建 name1.zip 和 name2.zip 并打开 name1.zip 文件,它只显示 file1.pdf。
我正在尝试的是,当我打开 name1.zip 文件时,它将附带父文件夹 name1
文件夹结构
测试 -->名称1 --> file1.pdf
有人可以帮我吗 谢谢 这是我的代码:
import os
import zipfile
path = "/Users/Documents/test"
path = os.path.abspath(os.path.normpath(os.path.expanduser(path)))
for folder in os.listdir(path):
zipf = zipfile.ZipFile('{0}.zip'.format(os.path.join(path, folder)), 'w', zipfile.ZIP_DEFLATED)
for root, dirs, files in os.walk(os.path.join(path, folder)):
for filename in files:
zipf.write(os.path.abspath(os.path.join(root, filename)), arcname=filename)
zipf.close()
I am working on zip the multiple folder in python
When i ran the code it's creating name1.zip and name2.zip and open the name1.zip file it only showing the file1.pdf.
What i am trying is when i open name1.zip file it will come with parent folder name1
Folder structure
test --> name1 --> file1.pdf
Could someone help me out
Thanks
This is my code:
import os
import zipfile
path = "/Users/Documents/test"
path = os.path.abspath(os.path.normpath(os.path.expanduser(path)))
for folder in os.listdir(path):
zipf = zipfile.ZipFile('{0}.zip'.format(os.path.join(path, folder)), 'w', zipfile.ZIP_DEFLATED)
for root, dirs, files in os.walk(os.path.join(path, folder)):
for filename in files:
zipf.write(os.path.abspath(os.path.join(root, filename)), arcname=filename)
zipf.close()
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
这就是
arcname
参数的用途。尝试而不是
另外,看看 pathlib。恕我直言,使代码更具可读性。
That's what the
arcname
parameter is for. Tryinstead of
Also, have a look at pathlib. Makes for more readable code IMHO.