Python壓縮文件基本應用代碼示例解讀
Python編程語言的出現,在很大程度上大大提高了編程人員程序開發的效率,并且其應用方式簡單,很容易上手,極大的滿足了一些編程人員的開發需求。我們今天將會為大家詳細介紹一下Python壓縮文件的相關方法。#t#
在了解Python壓縮文件這一技巧之前,首先先讓我們對Python這一語言進行一個詳細的介紹。
可擴充性可說是Python作為一種編程語言的特色。新的內置模塊(module)可以用C 或 C++寫成。而我們也可為現成的模塊加上Python的接口。Python可以使用戶避免過分的語法的羈絆而將精力主要集中到所要實現的程序任務上。
Python也被稱為是一門清晰的語言。因為它的作者在設計它的時候,總的指導思想是,對于一個特定的問題,只要有一種***的方法來解決就好了。這在由Tim Peters寫的python格言(稱為The Zen of Python)里面表述為:
There should be one-- and preferably only one --obvious way to do it.
有意思的是,這正好和Perl語言(另一種功能類似的高級動態語言)的中心思想TMTOWTDI(There's More Than One Way To Do It)完全相反。這似乎是人們常把Perl和Python互相比較的重要原因。
Python語言是一種清晰的語言的另一個意思是,它的作者有意的設計限制性很強的語法,使得不好的編程習慣(例如if語句的下一行不向右縮進)都不能通過編譯。這樣有意的強制程序員養成良好的編程習慣。其中很重要的一項就是Python的縮進規則。
例如if語句:
- if age<21:
- print "You cannot buy wine!\n"
- print "But you can buy chewing gum.\n"
- print "this is outside if\n"
一個和其他大多數語言(如C)的區別就是,一個模塊的界限,完全是由每行的首字符在這一行的位置來決定的(而C語言是用一對花括號{}來明確的定出模塊的邊界的,與字符的位置毫無關系)。這一點曾經引起過爭議。因為自從C這類的語言誕生后,語言的語法含義與字符的排列方式分離開來,曾經被認為是一種程序語言的進步。不過不可否認的是,通過強制程序員們縮進(包括if,for和函數定義等所有需要使用模塊的地方),Python確實使得程序更加清晰和美觀。
另外Python在其他部分的設計上也堅持了清晰劃一的風格,這使得Python稱為一門易讀性、易維護性好,并且被大量用戶所歡迎的、用途廣泛的語言。Python直接編寫的程序段有時運行效率甚至高于用C編寫的程序。
zipfile是Python里用來做zip格式編碼的壓縮和解壓縮的module,zipfile里有兩個非常重要的class:ZipFile和ZipInfo。ZipFile是主要的類,用來創建和讀取zip文件而ZipInfo是存儲的zip文件的每個文件的信息。
在這里我需要把一個目錄壓縮,這就要將目錄里的文件一個文件一個文件的加入,然后在使用zipfile的ZipFile類的時候,再一個一個寫入壓縮文件以完成Python壓縮文件這一操作步驟。
- #!/usr/bin/env Python
- #coding=utf-8
- import os
- import zipfile
- filelist = []
- for root, dirs, files in os.walk("D:\\clean"):
- for name in files:
- filelist.append(os.path.join(root, name))
- zf = zipfile.ZipFile("d:\\test.zip", "w", zipfile.zlib.DEFLATED)
- for tar in filelist:
- zf.write(tar)
- zf.close()
以上就是對Python壓縮文件的相關介紹。