简单介绍一下python中的压缩模块:import zipfile
zipfile模块可以让你打开或写入一个zip文件:
我们先看一个非常简单的例子,以更加好理解这个模块:
eg:import zipfile
z=zipfile.ZipFile('zipfilename',mode='r')
上述解释:打开一个zip文件,模式为"读模式"
函数说明:
1、zipfile.ZipFile(fileName[, mode[, compression[, allowZip64]]])
fileName:文件名,但是需要注意的是这个不能压缩一个文件夹,必须压缩一个有实质内容的文件
mode(文件模式): 'r' ----- 打开一个存在的只读ZIP文件
'w' ----- 清空并打开一个只写的zip文件,或创建一个只写的ZIP文件
'a' ----- 表示打开一个文件,并添加内容
compression:压缩格式 ,可选的压缩格式只有2个:ZIP_STORE、ZIP_DEFLATED。
ZIP_STORE是默认的,表示不压缩。
ZIP_DEFLATED表示压缩
allowZip64:是否支持64位的压缩
True:表示支持64位压缩,一般而言,在所压缩的文件大于2G时,会用到这个选项
False:默认值,因为Unix系统不支持
2、zipfile.close()
关闭操作
3、zipfile.write(filename[,arcname[,compress_type]])
filename:文件名
arcname:是压缩文件中该文件的名字,默认情况下和filename一样
compress_type:允许被压缩的文件可以有不同的压缩类型
eg:
>>> f=zipfile.ZipFile('/home/start/20110127/2011.zip','w',zipfile.ZIP_DEFLATED)
>>> f.write('/home/start/20110127/client_00_20.csv', 'client_00_20.csv')
>>> f.write('/home/start/20110127/client_00_10.csv', 'client_00_10.csv')
>>> f.close()
4、zipfile.extractall([path[,member[,password]]])
path:解压缩的目录
member:需要解压缩的文件的列表
password:当zip文件有密码时需要该选项
5、zipfile.is_zipfile(filename)
判断文件filename是不是压缩文件
6、ZipFile.namelist()
返回ZipFile对象的文件列表
主要是这些方法,不过还有很多其他的方法,因为比较少用到,所以就不描述了
详细文档可参考:
http://docs.python.org/library/zipfile.html?highlight=zipfile#module-zipfile