龙空技术网

python笔记51:压缩文件夹- zipfile模块速解

程序员猫猫 135

前言:

现时姐妹们对“python压缩文件夹为zip”大概比较注意,同学们都想要学习一些“python压缩文件夹为zip”的相关知识。那么小编同时在网上搜集了一些有关“python压缩文件夹为zip””的相关资讯,希望我们能喜欢,我们一起来了解一下吧!

主要内容:小目标:掌握文件夹的解压缩主要内容:zipfile模块使用

如果看完这篇文章,你还是弄不明白解压缩;

你来找我,我保证不打你,我给你发100的大红包。

1. zipfile模块

上才艺,zipfile模块主要方法:

zipfile.ZipFile(file,mode='r',compression=0,    allowZip64=True, compresslevel=None,)

主要参数:

zipFile参数

压缩方式:

压缩方式

zipfile对象的相关方法

方法说明:

zipfile对象

2 压缩文件

上才艺:准备一个目录,主要使用zipfile,os模块,然后开造:

#导入模块import zipfile,oszippath = r'F:\work\test.zip'srcpath = r'F:\work\testdir'#获取基础目录testdirbasedir = os.path.basename(srcpath)#创建zipfile对象with zipfile.ZipFile(zippath, 'w') as fzip:    #遍历目录    for root, subdir, flist in os.walk(srcpath):        #根据当前目录切分,否则写入目录会比较多        r, c= root.split(basedir)        c = c.strip('\\')        for f in flist:            #压缩文件,压缩中,zipfile对象会根据路径创建目录            fzip.write(os.path.join(root, f), os.path.join(basedir,c,f))

结果:生成test.zip压缩包。

解压文件

解压与压缩相反,开造:

一次性解压

#导入模块import zipfile,oszippath = r'F:\work\test.zip'destpath = r'F:\work\test1dir'#创建zipfile对象with zipfile.ZipFile(zippath, 'r') as fzip:    #文件全部加压缩到destpath目录    fzip.extractall(destpath)
直接压符合规则的图片
#导入模块import zipfile,oszippath = r'F:\work\test.zip'destpath = r'F:\work\test1dir'#创建zipfile对象with zipfile.ZipFile(zippath, 'r') as fzip:    #遍历压缩包中的文件    for f in fzip.namelist():        #判断是否png图片        if f.endswith('.png'):            #解压到指定目录            fzip.extract(f, destpath)

可以看到,使用Python处理解压缩,并不复杂。

实际工作中,我们可以使用这种方式来代替手动解压。

后面猫猫也在准备更多实战案例,在工作和学习中可以当做一个参考。

欢迎大家:关注+转发+评论。

标签: #python压缩文件夹为zip