2、讀取zip文件
首先,通過zipfile模塊打開指定zip文件,如:
zpfd = zipfile.ZipFile(path, mode='r')
對於zipfile,其標誌與open所用的打開文件標誌有所不同,不能識別 'rb'。
然後,讀取zip文件中的內容,zipfile對象提供壹個read(name)的方法,name為zip文件中的壹個文件入口,執行完成之後,將返回讀出的內容,如:
for filename in zpfd.namelist():
tmpcont = zpfd.read(filename)
print 'len(tmpcont)', 'tmpcont'
需要註意的是,讀取zip文件時,只能讀取內容
3、寫入zip文件
首先,需要zipfile模塊寫打開或創建zip文件,如:
zpfd = zipfile.ZipFile(path, mode='w')
寫打開是標誌可以為'w'或'a'('a'表示寫入壹個zip文件), 或者傳入第三個參數cmopression壓縮標誌
compression=zipfile.ZIP_DEFLATED 需要導入zlib模塊
compression=zipfile.ZIP_STORED則表示只對文件進行打包,並不壓縮
寫
入有兩種方式,壹種是直接寫入壹個已經存在的文件,可使用zipfile對象中write(filename, arcname,
compress_type)第壹個參數為文件名,第二個參數指寫入zip文件中的文件名,默認與filename壹致,第三個參數壓縮標誌可以覆蓋打開
zipfile時的使用參數;另壹種是寫入壹個字符串,可使用zipfile對象中的writestr(zinfo_or_arcname,
bytes),第壹個參數是zipinfo對象或寫到zip文件中的壓縮名,第二個參數是待寫入的字符串
4、最後,對於打開的zipfile對象需要進行關閉,從而使得寫入內容真正寫入磁盤,即:
zpfd.close()