Python2.7-zipfile

zipfile 模塊,提供了基本操做後綴爲「zip」的文件的接口,通常使用 ZipFile 類完成操做html

一、模塊方法python

zipfile.is_zipfile(filename):判斷 filename 是不是一個有效的 zip 文件spa

二、模塊的類命令行

2.1 ZipFile 類,讀寫 ZIP 文件debug

2.1.1 初始化構建類ZipFile(file[, mode[, compression[, allowZip64]]]):打開一個 ZIP 格式的文件進行讀寫htm

參數設置:
file:要打開的文件
mode:打開文件方式,有 r 和 w、a,默認爲 r,讀取一個已存在的文件,w 會覆蓋或寫新文件,對一個已存在的 ZIP 文件以 a 模式打開,會把新文件加入壓縮包中,若是不是 ZIP 文件,會把壓縮文件加入到 file 中去(不知道會發生什麼。。)
compression:指定壓縮方法,默認 ZIP_STORED,還能夠是 zlib 模塊下支持的 ZIP_DEFLATED
allowZip64:默認 False,爲 True 時能夠操做大於 2GB 的文件對象

2.1.2 實例方法接口

close():關閉壓縮文件,退出程序前不關閉的話會致使未寫入
getinfo(name):返回一個 ZipInfo 對象,包含壓縮文件里名爲 name 的信息
infolist():返回一個列表,每一個元素都是一個 ZipInfo 對象,對應壓縮文件裏的每一個文件
namelist():列表形式返回壓縮文件裏的每一個文件名
printdir():輸出壓縮包內容至 sys.stdout
setpassword(pwd):設置默認密碼
open(name[, mode[, pwd]]):解壓名爲 name 的文件,以只讀的 file-like 對象返回(有如下方法 read(), readline(), readlines(), __iter__(), next()),mode 能夠爲 r、U、rU,pwd 指定解壓密碼
extract(member[, path[, pwd]]):解壓名爲 member 的文件到當前目錄,path 指定解壓至別的目錄,pwd 指定密碼
extractall([path[, members[, pwd]]]):解壓全部文件至當前目錄,path 指定解壓至別的目錄,member 指定只解壓其中的哪些文件,pwd 指定密碼
read(name[, pwd]):字節形式返回 name 的解壓結果,pwd 指定密碼
write(filename[, arcname[, compress_type]]):把 filename 文件壓縮,壓縮包內名字爲 arcname,compress_type 能夠覆蓋類的壓縮方法
writestr(zinfo_or_arcname, bytes[, compress_type]):把 bytes 寫入壓縮包內,名爲 zinfo_or_arcname,compress_type 能夠覆蓋類的壓縮方法ip

2.1.3 實例屬性get

debug:設置 debug 信息輸出等級,默認 0,不輸出,最高 3
comment:設置 ZIP 文件的提示信息

2.2 PyZipFile 對象

2.2.1 PyZipFile 對象和 ZipFile 對象徹底相同,只是多了一個額外方法

writepy(pathname[, basename]):把 pathname 下 *.py[co] 文件都壓縮

2.3 ZipInfo 對象,是由 ZipFile 的 getinfo() 和 infolist() 方法生成的對象

2.3.1 實例屬性

filename:壓縮文件名
date_time:文件最後修改時間,年、月、日、時、分、秒
compress_type:壓縮方法
comment:提示信息
extra:額外數據信息(不清楚指什麼)
create_system:建立壓縮包的系統信息
create_version:壓縮包的 PKZIP 版本信息
extract_version:解壓須要的 PKZIP 版本信息
reserved:必定是 0
flag_bits:ZIP 標誌位
volume:文件頭的 Volume number
internal_attr:內部屬性
external_attr:文件外部屬性
header_offset:文件頭偏移量
CRC:壓縮前文件的 crc-32 值
compress_size:壓縮後文件大小
file_size:壓縮前文件大小

三、命令行接口

能夠用如下格式直接在命令行下調用:python -m zipfile ...「...」部分有如下幾種格式:-l <zipfile>:列出壓縮包內文件-c <zipfile> <source1> ... <sourceN>:把 N 個 source 文件壓縮至 zipfile-e <zipfile> <output_dir>:解壓 zipfile 至目標路徑-t <zipfile>:檢驗是否爲有效的 zipfile

相關文章
相關標籤/搜索
本站公眾號
   歡迎關注本站公眾號,獲取更多信息