小编典典

如何创建目录的 zip 存档?

all

如何在 Python 中创建目录结构的 zip 存档?


阅读 84

收藏
2022-03-03

共1个答案

小编典典

正如其他人指出的那样,您应该使用zipfile。该文档告诉您哪些功能可用,但并没有真正解释如何使用它们来压缩整个目录。我认为用一些示例代码最容易解释:

import os
import zipfile

def zipdir(path, ziph):
    # ziph is zipfile handle
    for root, dirs, files in os.walk(path):
        for file in files:
            ziph.write(os.path.join(root, file), 
                       os.path.relpath(os.path.join(root, file), 
                                       os.path.join(path, '..')))

zipf = zipfile.ZipFile('Python.zip', 'w', zipfile.ZIP_DEFLATED)
zipdir('tmp/', zipf)
zipf.close()
2022-03-03