如何進(jìn)行設(shè)計(jì)Python語言技巧說明
下面文章進(jìn)行詳細(xì)說明下什么是Python語言,Python語言是一種面向?qū)ο蟆⒅弊g式計(jì)算機(jī)程序設(shè)計(jì)語言,也是一種功能強(qiáng)大而完善的通用型語言,對于那些從來沒有學(xué)習(xí)過編程或者并非計(jì)算機(jī)專業(yè)的編程學(xué)習(xí)者而言。
提供了許多處理文件和目錄的內(nèi)置函數(shù)。重要的是,這些函數(shù)無論是在Unix、Windows還是Macintosh平臺上,它們的使用方式是完全一致的。本文將詳細(xì)解釋這些函數(shù)的使用方法。首先,我們介紹Python語言中類似于Windows系統(tǒng)的dir命令的列出文件功能。
然后描述如何測試一個文件名對應(yīng)的是一個標(biāo)準(zhǔn)文件、目錄還是鏈接,以及提取文件大小和日期的方法。之后,我們還將介紹如何刪除文件和目錄,如何復(fù)制和刪除文件。以及怎樣將一個完整的文件路徑分解成目錄部分和文件名部分,最后,我們講解目錄的創(chuàng)建,以及如何在目錄樹中移動目錄并處理文件。
Copytree的第三個參數(shù)規(guī)定對符號鏈接的處理,其中True表示保留符號鏈接;而False則意味著使用文件的物理副本替代符號鏈接。Python語言能夠很好地支持路徑名的跨平臺組成:Os.path.join能使用正確的分界符(在UNIX和Mac OS X操作系統(tǒng)中使用/。
在 Windows 上使用\)來聯(lián)接目錄和文件名,變量os.curdir和os.pardir分別表示當(dāng)前工作目錄及其父目錄。 像下面的UNIX操作系統(tǒng)命令。將遍歷root目錄樹;然后,對每個目錄名dirname分別調(diào)用myfunc(arg, dirname, files)即可,這里參數(shù)files是dir中的文件名列表(可通過調(diào)用os.listdir(dirname)來獲得);
arg是用戶從調(diào)用代碼中傳遞來的參數(shù)。對于UNIX操作系統(tǒng)用戶來說,Python語言中跨平臺os.path.walk相當(dāng)于Unix命令find?,F(xiàn)在,我們使用arg來建立一個數(shù)據(jù)結(jié)構(gòu),這里是一個2元組構(gòu)成的列表,其中每個2元組存放文件的尺寸(以MB為單位)和完整的文件路徑。
如果用于所有目錄的函數(shù)調(diào)用中都要更改arg的話,那么arg必須是一個可變的數(shù)據(jù)結(jié)構(gòu),即允許適當(dāng)?shù)剡M(jìn)行修改。參數(shù)dirname是當(dāng)前正在訪問的目錄的絕對路徑,而參數(shù)files內(nèi)的文件名則是相對于dirname的相對路徑。
在此期間,當(dāng)前工作目錄并沒有改變,那就是說該腳本仍然呆在腳本啟動時刻所在的目錄中。這就是為什么我們需要把filepath弄成帶有dirname和file的絕對路徑的原因。若要改變當(dāng)前工作目錄為dirname,只要在針對每個目錄調(diào)用os.path.walk的函數(shù)中調(diào)用一下os.chdir(dirname)。
注意為列表排序的函數(shù),bigfiles[’filelist’]函數(shù)中的每個元素就是一個字典,鍵size保存著一個字符串,不過在進(jìn)行比較之前我們必須將單位Mb(最后兩個字符)去掉,并將其轉(zhuǎn)換為浮點(diǎn)數(shù)。
對于文件和目錄的處理,雖然可以通過操作系統(tǒng)命令來完成,但是Python語言為了便于開發(fā)人員以編程的方式處理相關(guān)工作。提供了許多處理文件和目錄的內(nèi)置函數(shù)。重要的是,這些函數(shù)無論是在Unix、Windows還是Macintosh平臺上,它們的使用方式是完全一致的。
本文詳細(xì)解釋了這些函數(shù)的使用方法,其中,我們首先介紹了顯示目錄內(nèi)容的功能,然后描述如何測試一個文件名對應(yīng)的是一個標(biāo)準(zhǔn)文件、目錄還是鏈接,以及提取文件大小和日期的方法。
之后,我們還將介紹如何刪除文件和目錄,如何復(fù)制和刪除文件,以及怎樣將一個完整的文件路徑分解成目錄部分和文件名部分,最后,我們講解目錄的創(chuàng)建,以及如何在目錄樹中移動目錄并處理文件。
【編輯推薦】