我尝试使用以下代码压缩目录/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?
最佳答案
你应该能够
zip = zipfile.ZipFile('/home/zipfiles/whatever.zip', 'w')
现在所拥有的将在运行脚本的任何目录中创建文件。
注意:选择一个不
zip
的名字可能是个好主意。zip
是一个内置的,当你发现自己变得怪异时总是很烦人,因为你不小心跟踪到了你需要的内置。