0

我尝试使用以下代码压缩目录 /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 ?

4

1 回答 1

1

你应该可以设置

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

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

注意:选择一个不是zip. zip是一个内置的,总是很烦人发现你变得很奇怪TypeErrors,因为你不小心遮蔽了你需要的内置。

于 2013-07-16T03:49:28.930 回答