Python 快速教程(標準庫03):路徑與檔案 (os.path包, glob包)

發表於2015-11-08

路徑與檔案的簡介請參看Linux檔案系統

 

os.path包

os.path包主要是處理路徑字串,比如說’/home/vamei/doc/file.txt’,提取出有用資訊。

 

此外,還有下面的方法:

os.path.normpath(path)   # 去除路徑path中的冗餘。比如’/home/vamei/../.’被轉化為’/home’

 

os.path還可以查詢檔案的相關資訊(metadata)。檔案的相關資訊不儲存在檔案內部,而是由作業系統維護的,關於檔案的一些資訊(比如檔案型別,大小,修改時間)。

 

(實際上,這一部份類似於Linux中的ls命令的某些功能)

 

glob包

glob包最常用的方法只有一個, glob.glob()。該方法的功能與Linux中的ls相似(參看Linux檔案管理命令),接受一個Linux式的檔名格式表示式(filename pattern expression),列出所有符合該表示式的檔案(與正規表示式類似),將所有檔名放在一個表中返回。所以glob.glob()是一個查詢目錄下檔案的好方法。

該檔名錶達式的語法與Python自身的正規表示式不同 (你可以同時看一下fnmatch包,它的功能是檢測一個檔名是否符合Linux的檔名格式表示式)。 如下:

Filename Pattern Expression      Python Regular Expression

*                                .*

?                                .

[0-9]                         same

[a-e]                         same

[^mnp]                    same

 

我們可以用該命令找出/home/vamei下的所有檔案:

 

總結

檔案系統

os.path

glob.glob

相關文章