压缩到python中的特定目录

时间:2013-07-16 03:39:32

标签: python linux ubuntu zipfile

我尝试使用以下代码压缩目录/ tmp

#!/usr/bin/env python
import os
import zipfile


def zipdir(path, zip):
    for root, dirs, files in os.walk(path):
        for file in files:
            zip.write(os.path.join(root, file))

if __name__ == '__main__':
    zip = zipfile.ZipFile('Python.zip', 'w')
    zipdir('tmp/', zip)
    zip.close()

上述代码的输出似乎在“/”目录中创建了zip文件。有没有办法将输出重定向到另一个目录,比如/ home / zipfiles?

1 个答案:

答案 0 :(得分:1)

你应该可以设置

zip = zipfile.ZipFile('/home/zipfiles/whatever.zip', 'w')

您现在拥有的内容将在您运行脚本的任何目录中创建文件。

注意:选择一个不是zip的名称可能是个好主意。 zip是内置的,因为你不小心隐藏了你需要的内置内容而发现你变得很奇怪TypeErrors总是很烦人。