最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python中fnmatch模塊實(shí)現(xiàn)文件名匹配

 更新時間:2025年04月29日 10:34:16   作者:彬彬俠  
fnmatch模塊用于文件名匹配,支持?Unix shell風(fēng)格的通配符,本文主要介紹了Python中fnmatch模塊實(shí)現(xiàn)文件名匹配,具有一定的參考價值,感興趣的可以了解一下

fnmatch 模塊用于 文件名匹配,支持 Unix shell 風(fēng)格的通配符(類似 glob),但不匹配路徑,只匹配文件名。

與 glob 不同的是:

  • glob 是 在文件系統(tǒng)中搜索匹配的文件。
  • fnmatch 只用于 匹配字符串模式,通常結(jié)合 os.listdir() 使用。

1. fnmatch.fnmatch()

匹配 文件名 是否符合某個通配模式(不區(qū)分大小寫)。

import fnmatch

# 直接匹配文件名
print(fnmatch.fnmatch("data.txt", "*.txt"))  # True
print(fnmatch.fnmatch("data.csv", "*.txt"))  # False

2. fnmatch.fnmatchcase()

嚴(yán)格區(qū)分大小寫的匹配。

import fnmatch

print(fnmatch.fnmatchcase("DATA.TXT", "*.txt"))  # False (大小寫不同)
print(fnmatch.fnmatchcase("data.TXT", "*.TXT"))  # True

3. fnmatch.filter()

過濾列表,返回符合模式的文件名列表。

import fnmatch

files = ["data.txt", "report.doc", "image.png", "notes.TXT"]

# 過濾出所有 .txt 文件
txt_files = fnmatch.filter(files, "*.txt")
print(txt_files)  # ['data.txt']

4. fnmatch.translate()

將通配符模式轉(zhuǎn)換為正則表達(dá)式(regex)。

import fnmatch

pattern = fnmatch.translate("*.txt")
print(pattern)

輸出:

(?s:.*\.txt)\Z

可以用于 re.match() 進(jìn)行更復(fù)雜的匹配。

5. 結(jié)合 os.listdir() 篩選文件

import os
import fnmatch

# 獲取當(dāng)前目錄下的所有 .txt 文件
files = os.listdir(".")
txt_files = fnmatch.filter(files, "*.txt")

print(txt_files)

6. fnmatch vs glob

功能fnmatchglob
主要用途字符串匹配文件查找
是否查找文件? 僅匹配名稱? 掃描目錄獲取匹配文件
常用方法fnmatch(), filter()glob.glob(), rglob()

7. 總結(jié)

  • fnmatch.fnmatch():匹配字符串(文件名)。
  • fnmatch.fnmatchcase():大小寫敏感的匹配。
  • fnmatch.filter():從列表中過濾符合模式的文件。
  • fnmatch.translate():將通配符轉(zhuǎn)換為正則表達(dá)式。

適用于 字符串匹配,如 文件篩選、日志分析、路徑匹配 等。如果需要查找磁盤上的文件,建議使用 glob 或 os.listdir() 結(jié)合 fnmatch.filter()。

到此這篇關(guān)于Python中fnmatch模塊實(shí)現(xiàn)文件名匹配的文章就介紹到這了,更多相關(guān)Python fnmatch模塊 內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評論

都匀市| 含山县| 台江县| 闽清县| 霍州市| 手游| 台北县| 土默特左旗| 资溪县| 金华市| 迁西县| 罗江县| 铜鼓县| 黄大仙区| 广宗县| 梁平县| 广灵县| 崇左市| 濮阳市| 波密县| 威海市| 云阳县| 双城市| 寿光市| 德昌县| 德令哈市| 陆良县| 孝义市| 东明县| 梁河县| 乌兰浩特市| 莒南县| 乳山市| 潢川县| 巴中市| 嘉黎县| 县级市| 厦门市| 锡林浩特市| 桐乡市| 弥勒县|