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

yipeiwu_com5年前Python基础

本文为大家分享了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小屋

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python简单连接MongoDB数据库的方法

本文实例讲述了Python连接MongoDB数据库的方法。分享给大家供大家参考,具体如下: Python使用pymongo操作MongoDB数据库,首先需要安装pymongo模块,如下示...

pytorch神经网络之卷积层与全连接层参数的设置方法

当使用pytorch写网络结构的时候,本人发现在卷积层与第一个全连接层的全连接层的input_features不知道该写多少?一开始本人的做法是对着pytorch官网的公式推,但是总是算...

使用Python处理Excel表格的简单方法

使用Python处理Excel表格的简单方法

Excel 中的每一个单元,都会有这些属性:颜色(colors)、number formatting、字体(fonts)、边界(borders)、alignment、模式(pattern...

Python 正则表达式入门(中级篇)

初级篇链接:/post/99372.htm 上一篇我们说在这一篇里,我们会介绍子表达式,向前向后查找,回溯引用。到这一篇开始前除了回溯引用在一些场合不可替代以外,大部分情况下的正则表达式...

Python 存储字符串时节省空间的方法

从 Python 3 开始,str 类型代表着 Unicode 字符串。取决于编码的类型,一个 Unicode 字符可能会占 4 个字节,这个有些时候有点浪费内存。 出于内存占用以及性能...