本文要点在于使用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小屋”进入公众号,关注后可以查看更多内容!

欢迎转发给您的朋友,或许这正是Ta需要的知识!

Python压缩新文件到已有ZIP文件相关推荐

  1. C#压缩或解压(rar和zip文件)

    为了便于文件在网络中的传输和保存,通常将文件进行压缩操作,常用的压缩格式有rar.zip和7z,本文将介绍在C#中如何对这几种类型的文件进行压缩和解压,并提供一些在C#中解压缩文件的开源库. 在C#. ...

  2. vb.net 解压缩(文件/文件夹解压缩,zip文件浏览,单文件解压,分卷压缩)

    vb.net 解压缩(文件/文件夹解压缩,zip文件浏览,单文件解压,分卷压缩) DLL:Ionic.Zip.dll 说明: 1.解压/压缩 显示加密进度及总进度. 2.zip文件打开,浏览内部文件. ...

  3. php将文件夹打包zip文件,php将文件夹打包成zip文件

    php将文件夹打包成zip文件:function addFileToZip($path,$zip){ $handler=opendir($path); //打开当前文件夹由$path指定. while ...

  4. php 文件夹打包_php将文件夹打包成zip文件

    php将文件夹打包成zip文件:function addFileToZip($path,$zip){ $handler=opendir($path); //打开当前文件夹由$path指定. while ...

  5. linux 解压文件夹下所有zip文件

    解压上述文件. find . -name '*.zip' # 查看当前文件夹下所有zip文件 cd zip文件的父级文件夹目录 unzip '*.zip' # 运行此命令即可 还有一种方法, 直接使用 ...

  6. Python压缩多个属于不同驱动器的文件夹至同一个zip文件

    下面代码可以将多个文件夹压缩至同一个ZIP文件,即使这些文件夹不在同一个文件夹中,甚至不在同一个驱动器上. from zipfile import ZipFile from os import lis ...

  7. 基于Python——实现远程下载sftp文件(只下载.zip文件)

    [背景]远程下载发布包等文件时,总是要使用WinSCP等工具登陆拖动.今天就介绍一种使用python下载文件到本地的方法. [代码实现] 1 import paramiko # paramiko模块, ...

  8. python修改zip文件内容_python操作zip文件

    转自: 需要使用到zipfile模块 读取Zip文件 随便一个zip文件,我这里用了bb.zip,就是一个文件夹bb,里面有个文件aa.txt. import zipfile # 默认模式r,读 az ...

  9. Qt压缩解压缩zip文件,解压缩加密zip文件

    本文是windows系统,MinGW64位环境,MSVC编译环境下在quazipd和libz库的编译过程有所不同. 本文用的下载文件和工程文件做了个压缩包: https://download.csdn ...

最新文章

  1. 25个iptables常用示例
  2. 一张图看懂React生命周期
  3. java 缓存ech_ehcache获取缓存空指针
  4. java面试题29 牛客 以下关于集合类ArrayList、LinkedList、HashMap描述
  5. Linux cp命令:复制文件和目录
  6. java匿名内部对象_JavaSE 学习参考:匿名内部类和匿名对象
  7. Eclipse选择哪个版本
  8. centos 解决不在 sudoers 文件中。此事将被报告的问题
  9. 华为Verilog入门教程
  10. Qt中添加静态库.lb,.a和动态库.dll,.so,头文件和.cpp文件
  11. 金税盘计算机USB无法识别,金税盘连接电脑无法识别怎么回事?
  12. Lotka–Volterra equation Competitive Lotka–Volterra equations
  13. GIS空间分析 缓冲区分析与叠加分析1 选址分析(市区择房)
  14. Centos7.6上安装水族馆遇到报错BEGIN failed--compilation aborted at /usr/local/bin/asciiquarium line 42.
  15. php代码托管平台,程序员必须知道的几个Git代码托管平台
  16. 三子棋超详细思路及步骤
  17. 李宏毅机器学习2021作业7-Bert (Question Answering)
  18. 转 Fedora各个历史版本官方下载地址
  19. http 301、302、304、400、405、415状态码解释
  20. Introduction to Fabric.js/ Part 8 - Clipping with clipPaths(介绍Fabric.js第八部分-剪裁)

热门文章

  1. java 反射 动态编译_动态编译java源代码和反射调用问题
  2. linux服务器调优列表,2018-10-24(linux服务器常见的各种参数调优)
  3. Java分段函数选择结构,编程流程作业选择结构(50题)
  4. torch的model加载完怎么看_看完这篇后,别再说你不懂JVM类加载机制了~
  5. python异常处理有什么意义_怎么学好Python异常处理 五种处理机制是什么
  6. linux中 centos6 文件误删如何恢复
  7. php t double arrow,php – 语法错误,意外T_DOUBLE_ARROW
  8. 处理中文乱码_浅入深出:一次提问引发的深思,从此再也不怕“乱码”问题
  9. 通讯录通过id找邮箱和手机
  10. 基于JAVA+SpringMVC+Mybatis+MYSQL的学习资源交互系统