python如何压缩新文件到已有ZIP文件

本文为大家分享了python压缩新文件到已有ZIP文件的具体代码,供大家参考,具体内容如下

要点在于使用Python标准库zipfile创建压缩文件时,如果使用'a'模式时,可以追加新内容。

from zipfile import ZipFile
from os import listdir
from os.path import isfile, isdir, join

def addFileIntoZipfile(srcDir, fp):
 #遍历该文件夹中所有文件
 for subpath in listdir(srcDir):
 subpath = join(srcDir, subpath)
 if isfile(subpath):
  #如果是文件就直接压缩到ZIP文件
  fp.write(subpath)
 elif isdir(subpath):
  #如果是子文件夹就先写入子文件夹名
  #然后再递归调用函数
  #把所有文件都压缩进入ZIP文件
  fp.write(subpath)
  addFileIntoZipfile(subpath, fp)

def zipCompress(srcDir, desZipfile):
 with ZipFile(desZipfile, mode='a') as fp:
 addFileIntoZipfile(srcDir, fp)

#测试函数功能
paths = [r'C:\python34\Scripts', r'C:\python34\Dlls', r'c:\eclipse']
for path in paths:
 zipCompress(path, 'test.zip') 

来源:python小屋

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持呐喊教程。

声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#nhooo.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。