当前位置: 首页 > news >正文

利用python实现文件压缩打包的功能

主要是利用了zipfile实现文件压缩打包,简单实例代码如下:

import zipfilewith zipfile.ZipFile("archive.zip",'w') as zipf:zipf.write("config.ini")zipf.write("test.py")

其中的模式 w表示如果没有该文件则创建该文件,如果有该文件则覆盖。

那么如果已经存在该压缩文件,现在想往该压缩文件里面追加文件,是否可以?

实际上肯定可以的,只需要将w改成a即可。

import zipfilewith zipfile.ZipFile("archive.zip",'a') as zipf:zipf.write("mylist.pkl")

需要注意的是,上面的代码实际上只执行了一个打包的功能,根本没有对文件进行压缩,所以打包之后的文件大小没有什么变化,这显然不是我想要的。

这就需要对ZipFile函数的具体参数有所了解

  • ZipFile(filename, mode='r', compression=ZIP_STORED, allowZip64=True):创建或打开Zip文件。filename为文件名,mode为打开文件的模式,compression为压缩模式,allowZip64为是否支持Zip64格式。
  • ZipFile.write(filename, arcname=None, compress_type=None):将文件写入Zip文件中。filename为文件名,arcname为写入Zip文件中的文件名,compress_type为压缩模式。
  • ZipFile.extractall(path=None, members=None, pwd=None):将Zip文件中的所有文件解压到指定目录下。path为解压目录,members为要解压的文件列表,pwd为解压密码。

按照上面的提示,将关键代码进行修改如下:

import zipfilewith zipfile.ZipFile("archive.zip",'a',compression=zipfile.ZIP_STORED, allowZip64=True) as zipf:zipf.write("mylist.pkl")

结果发现,外甥打灯笼--- 照舅(旧),对多个参数值进行尝试。

最终解决办法,请查看这个网址:利用python实现文件压缩打包的功能 | 老五笔记

相关文章:

利用python实现文件压缩打包的功能

主要是利用了zipfile实现文件压缩打包,简单实例代码如下: import zipfilewith zipfile.ZipFile("archive.zip",w) as zipf:zipf.write("config.ini")zipf.write("test.py") 其中的模式 w表示如果没有该文件则创建该文件…...

如何创建百科?建立百科词条的意义何在?九问百科营销

在营销工作实践中,小马识途营销顾问经常接到关于百科营销的咨询,现整理了最受关注的九个问题分享给热爱营销工作的小伙伴。 一、什么是百科营销? 百科营销是借助百科知识传播,可以将企业、品牌、人物所拥有的对用户有价值的信息&a…...

Django如何设置时区为北京时间?

Django默认使用的是UTC时间,北京时间比UTC早8个小时,即如果UTC是凌晨两点,那么北京时间是早上八点。 Django中把setting.py中的语句: TIME_ZONE UTC修改为: TIME_ZONE Asia/Shanghai就把时区改为了北京时间。 这…...

Basemap地图绘制_Python数据分析与可视化

Basemap地图绘制 安装和使用地图投影地图背景在地图上画数据 Basemap是Matplotlib的一个子包,负责地图绘制。在数据可视化过程中,我们常需要将数据在地图上画出来。 比如说我们在地图上画出城市人口,飞机航线,军事基地&#xff0c…...

C#编程题分享(5)

判断质数问题 输⼊⼀个正整数&#xff0c;判断该数是否是质数。如果为质数输出 yes&#xff0c;如果不是输出no 样例输⼊113 输出yes int n Convert.ToInt32(Console.ReadLine()); int count 0; for (int i 1; i < n 1; i) {if (n % i 0) // 判断该数能被整除{coun…...

群晖Video Station 添加海报墙-新方法

海报墙 一般我们找到的都是mp4、mkv等格式的视频资源&#xff0c;而没有像上图这样的海报资源&#xff0c;那要怎样实现海报墙呢&#xff1f; 按照以前的方法&#xff0c;是可以通过The Movie Database的API Key来搜刮电影海报信息&#xff0c;但是现在这个方法不行了 现在介绍…...

【MODBUS】Modbus协议入门简介

Modbus&#xff08;Modicon Communication Protocol&#xff09;是一种用于工业自动化领域的通信协议&#xff0c;最初由Modicon&#xff08;现在是施耐德电气的一部分&#xff09;开发。Modbus协议被广泛应用于连接不同厂商的工业设备&#xff0c;实现设备之间的通信和数据交换…...

ORA-00257: archiver error. Connect internal only, until freed……

今天给客户测 试问题&#xff0c;让客户把数据发过来了。解压缩后一看&#xff0c;他们还是用的oracle 815版本的(他们exp导出时&#xff0c;带了导出日志&#xff0c;从导出日志中看出来是oracle 815版本的)&#xff0c;不过没有关系&#xff0c;低版本的exp是可以用高版本的i…...

继承 和 多肽(超重点 ! ! !)

[本节目标] 1.继承 2.组合 3.多肽 1.继承 1.1 为什么要继承 Java中使用类对现实世界中实体来进行描述&#xff0c;类经过实例化之后的产物对象&#xff0c;则可以用来表示现实中的实体&#xff0c;但是现实世界错综复杂&#xff0c;事物之间可能会存在一些关联&#xff0…...

H265、VP9、AV1视频编码器性能对比

1、背景介绍 目前在视频编解码器中,H264 已经成为绝对的主流,被大部分设备、浏览器所支持。虽然有更先进的编码器推出,但是受限于推广速度和设备支持成本,一直未能成为主流。 今年公司的目标是持续降本增效,现在将”屠刀“指向了视频业务的存储成本。视频文件存储主要两…...

C语言-结构体

---------------------------- ------------------ 岁月漫长心怀热爱&#xff0c;携手共赴星辰大海 --------今天来到我们自定义类型 -----结构体的讲解 目录 结构体的类型声明和初始化 结构体的类型声明 结构体成员的直接访问 结构体成员的间接访问 嵌套结构体进行访问 使用…...

C#拼夕夕自动化登录,电商网页自动化操作。WebView2

单纯靠WebView2是没办法通过JS实现自动登录操作的&#xff0c;包括浏览器插件&#xff0c;都不行&#xff0c;因为大公司对反爬机制控制的还是挺严格。 下面是实现效果&#xff0c;私信我&#xff0c;咨询解决方案。 20231202_153912 C#有偿Q群&#xff1a;927860652博客仅为…...

【Spring Boot 源码学习】BootstrapRegistryInitializer 详解

Spring Boot 源码学习系列 BootstrapRegistryInitializer 详解 引言往期内容主要内容1. 初识 BootstrapRegistryInitializer2. 加载 BootstrapRegistryInitializer3. BootstrapRegistryInitializer 的初始化 总结 引言 书接前文《初识 SpringApplication》&#xff0c;我们从 …...

预览功能实现

需求&#xff1a;将后端返回来的文字或者图片和视频展示在页面上。 <!-- 预览 --><el-dialog title"预览" :visible.sync"dialogPreviewVisible" width"50%" append-to-body :close-on-click-modal"false" close"Previe…...

canvas基础:绘制贝塞尔曲线

canvas实例应用100 专栏提供canvas的基础知识&#xff0c;高级动画&#xff0c;相关应用扩展等信息。 canvas作为html的一部分&#xff0c;是图像图标地图可视化的一个重要的基础&#xff0c;学好了canvas&#xff0c;在其他的一些应用上将会起到非常重要的帮助。 文章目录 bez…...

高项备考葵花宝典-项目范围管理输入、输出、工具和技术

项目范围管理包括确保项目“做”且“只做”所需的全部工作&#xff08;即不能少做&#xff0c;也不能多做&#xff0c;如果多做&#xff0c;就要消耗团队额外的时间和资源&#xff0c;并且无法被认可&#xff09;&#xff0c;以成功完成项目。项目范围管理主要在于定义和控制哪…...

在表格中显示字典的内容(根据后端返回的数据)vue3

进入页面&#xff0c;调接口&#xff0c;后端返回数据&#xff0c;indexType为0或者1&#xff0c;要用这个数据显示字典的内容 用插槽拿到数据 写一个函数&#xff0c;在模板中使用 const { proxy } getCurrentInstance(); // 字典-指标类型 const { index_type } proxy.u…...

编程怎么学才能快速入门,分享一款中文编程工具快速学习编程思路,中文编程工具之边条主控菜单构件简介

编程怎么学才能快速入门&#xff0c;分享一款中文编程工具快速学习编程思路&#xff0c;中文编程工具之边条主控菜单构件简介 一、前言 零基础自学编程&#xff0c;中文编程工具下载&#xff0c;中文编程工具构件之扩展系统菜单构件教程编程系统化教程链接https://jywxz.blog…...

MySQL索引下推

文章目录 索引下推为什么范围查找Mysql没有用索引下推优化&#xff1f; 说到索引下推&#xff0c;应该会有不少人对它很陌生的&#xff0c;那么什么是索引下推&#xff0c;今天我们就来谈谈它到底是什么样&#xff1f; 索引下推 索引下推&#xff1a;MySQL 5.6 引入的索引下推…...

代码随想录刷题题Day3

刷题的第三天&#xff0c;希望自己能够不断坚持下去&#xff0c;迎来蜕变。&#x1f600;&#x1f600;&#x1f600; 刷题语言&#xff1a;C / Python Day3 任务 ● 链表理论基础 ● 203.移除链表元素 ● 707.设计链表 ● 206.反转链表 1 链表理论基础 链表&#xff1a;通过…...

Android Studio中文界面终极指南:3个步骤告别英文开发障碍

Android Studio中文界面终极指南&#xff1a;3个步骤告别英文开发障碍 【免费下载链接】AndroidStudioChineseLanguagePack AndroidStudio中文插件(官方修改版本&#xff09; 项目地址: https://gitcode.com/gh_mirrors/an/AndroidStudioChineseLanguagePack 还在为Andr…...

3步打造专业预印本:arxiv.sty LaTeX排版方案实战指南

3步打造专业预印本&#xff1a;arxiv.sty LaTeX排版方案实战指南 【免费下载链接】arxiv-style A Latex style and template for paper preprints (based on NIPS style) 项目地址: https://gitcode.com/gh_mirrors/ar/arxiv-style 在学术研究领域&#xff0c;预印本排版…...

面向科学计算Agent的Harness数值稳定性校验

面向科学计算Agent的Harness数值稳定性校验关键词&#xff1a;科学计算Agent、Harness框架、数值稳定性校验、数值误差溯源、Agent-数值系统交互、可复现科学、边界条件自动化测试摘要&#xff1a;随着大语言模型&#xff08;LLM&#xff09;与多模态AI的崛起&#xff0c;科学计…...

如何快速掌握NCBI基因组批量下载:面向生物信息学新手的完整实战指南

如何快速掌握NCBI基因组批量下载&#xff1a;面向生物信息学新手的完整实战指南 【免费下载链接】ncbi-genome-download Scripts to download genomes from the NCBI FTP servers 项目地址: https://gitcode.com/gh_mirrors/nc/ncbi-genome-download NCBI基因组数据批量…...

Arduino程序心脏:从setup初始化到loop循环的实战解析

1. Arduino程序的双引擎&#xff1a;setup与loop初探 第一次接触Arduino编程时&#xff0c;很多人会被它独特的程序结构所吸引。与传统编程不同&#xff0c;Arduino程序没有复杂的main函数入口&#xff0c;而是由两个看似简单的函数构成整个程序的骨架——这就是setup()和loop(…...

Veil-Evasion核心模块深度解析:从控制器到Payload生成

Veil-Evasion核心模块深度解析&#xff1a;从控制器到Payload生成 【免费下载链接】Veil-Evasion Veil Evasion is no longer supported, use Veil 3.0! 项目地址: https://gitcode.com/gh_mirrors/ve/Veil-Evasion Veil-Evasion是一款专业的免杀payload生成工具&#x…...

Ardb源码深度解析:从网络层到存储引擎的完整架构设计

Ardb源码深度解析&#xff1a;从网络层到存储引擎的完整架构设计 【免费下载链接】ardb A redis protocol compatible nosql, it support multiple storage engines as backend like Googles LevelDB, Facebooks RocksDB, OpenLDAPs LMDB, PerconaFT, WiredTiger, ForestDB. …...

使用Taotoken为Hermes Agent配置自定义模型提供方详细步骤

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 使用Taotoken为Hermes Agent配置自定义模型提供方详细步骤 对于使用Hermes Agent框架构建智能体应用的开发者而言&#xff0c;灵活…...

图像质量评估新视角:抛开PSNR和SSIM,聊聊如何用‘变异系数’量化局部细节清晰度

图像质量评估新视角&#xff1a;用变异系数量化局部细节清晰度的实战指南 在数字图像处理领域&#xff0c;评估图像质量一直是核心挑战。传统指标如PSNR&#xff08;峰值信噪比&#xff09;和SSIM&#xff08;结构相似性&#xff09;虽然广泛应用&#xff0c;但面对复杂场景时往…...

终极解决Windows风扇控制难题:FanControl完全指南

终极解决Windows风扇控制难题&#xff1a;FanControl完全指南 【免费下载链接】FanControl.Releases This is the release repository for Fan Control, a highly customizable fan controlling software for Windows. 项目地址: https://gitcode.com/GitHub_Trending/fa/Fan…...