您好,登錄后才能下訂單哦!
小編給大家分享一下Python文件名的匹配之clob庫怎么用,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!
既然在Pathlib庫中提到了glob()函數,那么我們就專門用一篇內容講解文件名的匹配。其實我們有專門的一個文件名匹配庫就叫:glob。
不過,glob庫的API非常小,但是僅僅應用于文件名的匹配綽綽有余。只要是在實際的項目中需要過濾,或者匹配一組文件,都可以使用該庫進行操作。
星號(*)
話不多說,下面我們使用通配符來匹配文件名,示例如下:
import glob for name in sorted(glob.glob('text/*')): print(name)
運行之后,效果如下:
這里不僅用*通配符獲取了目錄下的所有文件,而且還對其進行了排序。
問號(?)是用來匹配單字的,比如我們賽選上面1開頭的圖片文件。示例如下:
import glob for name in glob.glob('text/1?.png'): print(name)
運行之后,效果如下:
從上面兩個匹配我們看出來,glob庫的匹配規則與正則表達式有些相似。既然它能匹配模糊的,一個或多個字符,那么肯定也可以匹配區間字符。
示例如下:
import glob for name in glob.glob('text/15[a-z].*'): print(name)
運行之后,效果如下:
當然,上面的文件名都是常規的文件名,都是用字母與數字組成的。但是,有些人比較怪,可能在文件名中包含了特殊的字符,比如上面的匹配字符“?*[”等。那怎么辦呢?用反斜杠“\”轉義嗎?
其實,我們還有更簡單的,直接使用escape()函數進行操作。示例如下:
import glob escape_str='?*[]' for char in escape_str: pattern = 'text/*' + glob.escape(char) + '.png' for name in glob.glob(pattern): print(name)
運行之后,效果如下:
python的五大特點:1.簡單易學,開發程序時,專注的是解決問題,而不是搞明白語言本身。2.面向對象,與其他主要的語言如C++和Java相比, Python以一種非常強大又簡單的方式實現面向對象編程。3.可移植性,Python程序無需修改就可以在各種平臺上運行。4.解釋性,Python語言寫的程序不需要編譯成二進制代碼,可以直接從源代碼運行程序。5.開源,Python是 FLOSS(自由/開放源碼軟件)之一。
看完了這篇文章,相信你對“Python文件名的匹配之clob庫怎么用”有了一定的了解,如果想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。