可能的重复:
如何使用 python(版本 2.5)压缩文件夹的内容? https://stackoverflow.com/questions/296499/how-do-i-zip-the-contents-of-a-folder-using-python-version-2-5
假设我有一个目录:/home/user/files/
。这个目录有一堆文件:
/home/user/files/
-- test.py
-- config.py
我想使用压缩这个目录ZipFile
在Python中。我需要吗循环遍历目录并递归添加这些文件 https://stackoverflow.com/questions/458436/adding-folders-to-a-zip-file-using-python,或者是否可以传递目录名称并且 ZipFile 类自动添加其下的所有内容?
最后,我想要:
/home/user/files.zip (and inside my zip, I dont need to have a /files folder inside the zip:)
-- test.py
-- config.py
请注意,这不包括空目录。如果需要这些,可以在网上找到解决方法;也许最好在我们最喜欢的归档程序中获取空目录的 ZipInfo 记录,以查看其中的内容。
硬编码文件/路径以消除我的代码的细节......
target_dir = '/tmp/zip_me_up'
zip = zipfile.ZipFile('/tmp/example.zip', 'w', zipfile.ZIP_DEFLATED)
rootlen = len(target_dir) + 1
for base, dirs, files in os.walk(target_dir):
for file in files:
fn = os.path.join(base, file)
zip.write(fn, fn[rootlen:])
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)