Jak*_*keD 3 python directory zip shutil
我正在尝试使用 python Shutil 压缩目录,如下所示:
shutil.make_archive("~/Desktop/zipfile", 'zip', "~/Documents/foldertozip")
Run Code Online (Sandbox Code Playgroud)
但结果仅压缩“foldertozip”内的文件。例如,
foldertozip
-- file1
-- file2
zipfile.zip
-- file1
-- file2
Run Code Online (Sandbox Code Playgroud)
另一方面,如果我从 Windows 文件资源管理器或 mac finder 中压缩它,我会得到以下信息:
foldertozip
-- file1
-- file2
zipfile.zip
-- foldertozip
-- file1
-- file2
Run Code Online (Sandbox Code Playgroud)
如何使用 Shutil 执行与文件资源管理器相同的操作并包含基本目录?我知道我可以将“foldertozip”复制到具有相同名称的文件夹,然后压缩该文件夹,但如果可能的话,我更喜欢更干净的解决方案。
make_archiveroot_dir如果您同时通过和,就会做您想做的事base_dir。请参阅文档。
import shutil
shutil.make_archive('~/Desktop/zipfile', 'zip', '~/Documents/', 'foldertozip')
Run Code Online (Sandbox Code Playgroud)