我试图通过压缩特定目录中的两个文本文件来创建一个zip文件。我的代码如下所示:
import zipfile,os
project='C:/Users/user1/Documents/work/filesToZip'
dirlist = os.listdir(project)
print dirlist
zip_name = zipfile.ZipFile(os.path.join(project,'jobs.zip'),'w')
for file in dirlist:
zip_name.write(os.path.join(project,file))
zip_name.close()
代码运行良好,它创建了zip文件,唯一的问题是当我打开zip文件时,我发现整个目录结构都被压缩了。i、 当我打开文件时,我会发现用户打开它,然后用户1打开它,然后文档打开它,然后工作,然后文件tozip,然后我会找到我想要压缩的文件。我的问题是,如何才能得到红色的文件结构,所以当我打开压缩文件,我发现我压缩的文件马上?你知道吗
提前谢谢!你知道吗
ZipFile.write
有an optional second parameter ^{对于Python2.7+,可以使用^{} :
这样您就可以显式地指定哪个目录应该是
root_dir
,哪个目录应该是base_dir
。如果root_dir
和base_dir
不一样,它将只压缩base_dir
中的文件,但将目录结构保留到root_dir
相关问题 更多 >
编程相关推荐