python中压缩文件夹 python 压缩文件 您所在的位置:网站首页 python01 python中压缩文件夹 python 压缩文件

python中压缩文件夹 python 压缩文件

2023-05-31 13:05| 来源: 网络整理| 查看: 265

我们经常使用压缩程序对文件进行压缩打包,在 Python 中也提供了相应的 zipfile 模块方便我们对 ZIP 压缩文件进行操作。

读取 ZIP 压缩文件

读取 ZIP 压缩文件必须先创建 ZipFile 对象,通过调用 zipfile.ZipFile() 函数,传入 ZIP 文件名字符串就能获取到此 ZipFile 对象, ZipFile 对象与 File 对象类似,使用后需要调用 close() 函数关闭 ZIP 文件。使用 ZipFile 对象的 namelist() 方法可以返回 ZIP 文件中包含的所有文件夹和文件字符串列表。使用 ZipFile 对象的 getinfo() 方法可以传入 ZIP 里存在文件的字符串获取此文件的 ZipInfo 对象,可以再通过调用 file_size 获取文件压缩前的大小或调用 compress_size 获取文件压缩后的大小。通过计算 file_size / compress_size 就能获取到文件的压缩效率。

>>> import zipfile >>> zf = zipfile.ZipFile('C:\\Users\\Caizi\\Python.zip') >>> zf.namelist() ['Python/', 'Python/day01/', 'Python/day01/python01.py', 'Python/day01/python02.py', 'Python/readme.txt'] >>> readmeInfo = zf.getinfo('Python/readme.txt') >>> readmeInfo.file_size 9239 >>> readmeInfo.compress_size 4348 >>> readmeInfo.file_size / readmeInfo.compress_size 2.124885004599816 >>> zf.close()ZIP 压缩文件解压

使用 extractall() 函数,可以将 ZIP 压缩文件的所有内容解压到指定路径下。使用 extract() 函数,可以将 ZIP 压缩文件中的指定文件解压到指定路径下,函数返回解压后文件的绝对路径。

>>> import zipfile >>> zf = zipfile.ZipFile('C:\\Users\\Caizi\\Python.zip') >>> zf.extractall('C:\\zipTestAll') >>> zf.extract('Python/readme.txt', 'C:\\zipTest') 'C:\\zipTest\\Python\\readme.txt' >>> zf.close()创建 ZIP 压缩文件

创建 ZIP 压缩文件必须以写模式打开 ZipFile 对象, ZipFile() 第一个参数为创建的压缩文件文件名,第二个参数为打开此文件的模式,即写模式 'w' 。使用 write() 方法将文件写入压缩文件里,第一个参数为要写入文件的文件名字符串,第二个参数为压缩算法。

>>> import zipfile >>> zf = zipfile.ZipFile('C:\\Users\\Caizi\\new.zip', 'w') >>> zf.write('C:\\Users\\Caizi\\zipcreate.txt', compress_type=zipfile.ZIP_DEFLATED) >>> zf.close()添加文件到 ZIP 压缩文件

添加文件到 ZIP 压缩文件与创建 ZIP 压缩文件方法相似,只不过在打开 ZipFile 对象时要以追加模式打开,即 ZipFile() 第二个参数设为 'a' 。

>>> import zipfile >>> zf = zipfile.ZipFile('C:\\Users\\Caizi\\new.zip', 'a') >>> zf.write('C:\\Users\\Caizi\\zipadd.txt', compress_type=zipfile.ZIP_DEFLATED) >>> zf.close()



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有