Python解壓縮ZIP格式

轉自:http://blog.csdn.net/linux__kernel/article/details/8271326linux

不少人在Google上不停的找合適本身的壓縮,卻不知Py的壓縮很不錯。能夠試試。固然C#,Java的壓縮也有第三方的類。Py有不少美名:數學理論強大,數據結構高級等等,關於壓縮算法固然用Py更加簡單易用,達到目的纔是最重要的。算法

Python壓縮ZIP文件:數據結構

import zipfile
f = zipfile.ZipFile(target,'w',zipfile.ZIP_DEFLATED)
f.write(filename,file_url)
f.close()

其中target:是壓縮後要保存的路徑,能夠是: 'C:\\temp\\'
ZIP_DEFLATED:表示壓縮,還有一個參數:ZIP_STORE:表示只打包,不壓縮。這個Linux中的gz跟tar格式有點相似.
write方法若是隻有一個參數filename的話,表示把你filename所帶的路徑所有壓縮到zip文件中。若是帶兩個參數,表示把filename路徑中的那個file壓縮一下而且存放到file_url中,中間沒有增長任何的文件夾。
若是要壓縮不少的文件,循環的write就ok了
最後close掉。
Python解壓ZIP文件:架構

f = zipfile.ZipFile("zipfilePath",'r')
for file in f.namelist():
f.extract(file,"temp/")

zipfilePath是壓縮文件的路徑
循環訪問該壓縮文件中的文件,而且一個一個file的解壓到對應的"temp\"文件夾中
--------------------------------------------------------------------------------------------------------------
爲何我會用Python來進行解壓縮呢,首先對於一個技術的取向,要看技術的擅長處,很顯然若是你想用Python架構一個大型的Web,有點不可取,有人會跟我爭,誰說的呀,Django不是很好的架構嘛,那Django是你寫出來的嗎?你的架構思想在哪裏?因此大部分Web仍是用Java或者C#架構,這僅僅是很初步的語言層面,上升到擴展、效率、邏輯等等就不少了。
爲何我喜歡Python,說一個事情。每當我在之前的工做中,不斷的重複不少邏輯,開發流程的時候,Python老是帶給我驚喜。好比解壓縮。若是是Java跟C#,我會堅決果斷的去Google一下開源類,而後下載下來,而後編譯,而後引用、導入,再找找使用指南……
不錯,這是一條路,很好。只要解決問題就好。
可是在生活層面上,老是缺乏一點,沒有情調,沒有任何觸動心靈的顫動。
用Python吧!Python確定有解壓縮,沒有不可能的,只是你沒有想到,我不信一個發展了10年的語言還有什麼缺憾,對照C++ SLT也完善的差很少了!想到的都有!
標準庫中已經引入了zipfile就ok了
壓縮跟解壓都3行代碼,若是你極端一點1行也能搞定。
但願你也喜歡上Pyurl

 

 

解壓當前目錄下的zip文件到當前目錄,並刪除原有的zip文件spa

import zipfile
import os

file_list = os.listdir(r'.')

for file_name in file_list:
    if os.path.splitext(file_name)[1] == '.zip':
        print file_name

        file_zip = zipfile.ZipFile(file_name, 'r')
        for file in file_zip.namelist():
            file_zip.extract(file, r'.')
        file_zip.close()
        os.remove(file_name)    
相關文章
相關標籤/搜索