發布時間:2024-04-17 文章來源:深度系統下載 瀏覽:
從簡單的角度來看的話,zip格式會是個不錯的選擇,而且python對zip格式的支持夠簡單,夠好用。zip文件格式信息一個 ZIP 文件由三個部分組成:壓縮源文件數據區+壓縮源文件目錄區+壓縮源文件目錄結束標志 1)壓縮源文件數據區,在這個數據區中每一個壓縮的源文件/目錄都是一條記錄,記錄的格式如下: [文件頭+ 文件數據 + 數據描述符] 2)壓縮源文件目錄區,在這個數據區中每一條紀錄對應在壓縮源文件數據區中的一條數據,如果你僅僅是希望用python來做壓縮和解壓縮,那么就不用去翻文檔了,這里提供一個簡單的用法,讓你一看就能明白。 # -*- coding: gbk -*- #zipfile模塊 #讀取或寫入ZIP壓縮包 #讀取ZIP壓縮包的文件列表 import zipfile import os import glob file = zipfile.ZipFile("zipfile_module.zip", "r") print '''列出文件''' for name in file.namelist(): print name print '''列出文件信息''' for info in file.infolist(): print info.filename,"文件名" print info.date_time,"修改時間" print info.file_size,"大小" print info.compress_type,"壓縮級別" print info.compress_size ,"壓縮數據大小" print info.file_size,"未壓縮文件大小" for i in range(1, 10): print "" print '''解壓操作 unzip''' for name in file.namelist(): file.extract(name,os.getcwd()+"/zipfile_module") #解壓到當前目錄 #關閉壓縮文件句柄 file.close() print '''壓縮操作 zip''' #獲取當前目錄樹 fileLists=[] for root,dirs,files in os.walk("zipfile_module"): for name in dirs: fileLists.append(os.path.join(root, name)) #目錄入列表 for name in files: fileLists.append(os.path.join(root,name)) #文件入列表 #創建壓縮文件 file2=zipfile.ZipFile(os.getcwd()+"/zipfile_module2"+".zip",'w',zipfile.ZIP_DEFLATED) #zipfile.zlib.DEFLATED 亦可 #寫入目錄樹 for name in fileLists: file2.write(name) #關閉壓縮文件 file2.close() |