我正在尝试将zip文件保存在/ tmp目录中。这是我的代码:
import zipfile
log.info('ZippingXMLFile...')
myfilepath = '/tmp/%s' % self.file_name
myzippath = myfilepath.replace('.xml', '.zip')
zipfile.ZipFile(myzippath, 'w', zipfile.ZIP_DEFLATED).write(myfilepath)
这会将zip文件保存在/tmp
目录中。但是,当我双击zip文件解压缩时。它在新的zip
目录中创建tmp
文件。如何在file.xml
目录中将压缩文件保存为/tmp/file.xml
而不是tmp
?
或者,使用subprocess
模块可能有更简单的方法吗?
答案 0 :(得分:0)
您可以在创建zip文件之前将目录更改为/tmp
,然后在完成后更改为
import zipfile
import os
log.info('ZippingXMLFile...')
saved = os.getcwd()
os.chdir('/tmp')
myzippath = self.file_name.replace('.xml', '.zip')
zipfile.ZipFile(myzippath, 'w', zipfile.ZIP_DEFLATED).write(self.file_name)
os.chdir(saved)