zipfile模块是Python的内置模块,用于处理zip压缩文件。它提供了一些函数和类,可以创建、读取和修改zip文件。
常用的zipfile模块函数和类的用法如下:
zipfile.ZipFile(filename, mode=‘r’, compression=ZIP_STORED) 创建一个ZipFile对象,打开指定的zip文件。参数filename是zip文件的路径,mode是打开模式(可选,默认为’r’),compression是压缩方法(可选,默认为ZIP_STORED不压缩)。
示例:
import zipfile
zf = zipfile.ZipFile('example.zip', 'r')
ZipFile对象的方法:
close()
: 关闭ZipFile对象。extractall(path=None, members=None, pwd=None)
: 解压缩zip文件中的所有文件到指定的目录。extract(member, path=None, pwd=None)
: 解压缩zip文件中的单个文件到指定的目录。getinfo(name)
: 获取zip文件中指定文件的信息。namelist()
: 返回zip文件中所有文件的名称列表。open(name, mode='r', pwd=None, *, force_zip64=False)
: 打开zip文件中的某个文件,并返回一个类似于文件对象的ZipExtFile对象。printdir()
: 打印zip文件中所有文件的详细信息。示例:
import zipfile
zf = zipfile.ZipFile('example.zip', 'r')
zf.extractall('extracted_files')
zf.close()
ZipExtFile对象的方法:
read(size=-1)
: 读取指定大小的数据,如果没有指定size,则读取整个文件的内容。seek(offset[, whence])
: 设置文件指针的位置。close()
: 关闭ZipExtFile对象。示例:
import zipfile
zf = zipfile.ZipFile('example.zip', 'r')
file = zf.open('example.txt', 'r')
data = file.read()
file.close()
zf.close()
这只是zipfile模块的一些常见用法,还有很多其他功能可以通过该模块来实现。你可以查阅Python官方文档以获取更详细的信息。