亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Python通過(guò)fnmatch模塊實(shí)現(xiàn)文件名匹配

 更新時(shí)間:2020年09月30日 16:13:04   作者:lincappu  
這篇文章主要介紹了Python通過(guò)fnmatch模塊實(shí)現(xiàn)文件名匹配,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

fnmatch 模塊主要用于文件名稱的匹配,其能力比簡(jiǎn)單的字符串匹配更強(qiáng)大,但比使用正則表達(dá)式相比稍弱。。如果在數(shù)據(jù)處理操作中,只需要使用簡(jiǎn)單的通配符就能完成文件名的匹配,則使用 fnmatch 模塊是不錯(cuò)的選擇。

fnmatch 模塊中,常用的函數(shù)及其功能如表 1 所示。

Python fnmatch模塊常用函數(shù)及功能

函數(shù)名 功能
fnmatch.filter(names, pattern) 對(duì) names 列表進(jìn)行過(guò)濾,返回 names 列表中匹配 pattern 的文件名組成的子集合。
fnmatch.fnmatch(filename, pattern) 判斷 filename 文件名,是否和指定 pattern 字符串匹配
fnmatch.fnmatchcase(filename, pattern) 和 fnmatch() 函數(shù)功能大致相同,只是該函數(shù)區(qū)分大小寫。
fnmatch.translate(pattern) 將一個(gè) UNIX shell 風(fēng)格的 pattern 字符串,轉(zhuǎn)換為正則表達(dá)式

fnmatch 模塊匹配文件名的模式使用的就是 UNIX shell 風(fēng)格,其支持使用如下幾個(gè)通配符:

  • *:可匹配任意個(gè)任意字符。
  • ?:可匹配一個(gè)任意字符。
  • [字符序列]:可匹配中括號(hào)里字符序列中的任意字符。該字符序列也支持中畫線表示法。比如 [a-c] 可代表 a、b 和 c 字符中任意一個(gè)。
  • [!字符序列]:可匹配不在中括號(hào)里字符序列中的任意字符。

例如,下面程序演示表 1 中一些函數(shù)的用法及功能:

import fnmatch
#filter()
print(fnmatch.filter(['dlsf', 'ewro.txt', 'te.py', 'youe.py'], '*.txt'))
#fnmatch()
for file in ['word.doc','index.py','my_file.txt']:
if fnmatch.fnmatch(file,'*.txt'):
print(file)
#fnmatchcase()
print([addr for addr in ['word.doc','index.py','my_file.txt','a.TXT'] if fnmatch.fnmatchcase(addr, '*.txt')])
#translate()
print(fnmatch.translate('a*b.txt'))

程序執(zhí)行結(jié)果為:

['ewro.txt']
my_file.txt
['my_file.txt']
(?s:a.*b\.txt)\Z

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論