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

Python中fnmatch模塊實現文件名匹配

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

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

與 glob 不同的是:

  • glob 是 在文件系統(tǒng)中搜索匹配的文件。
  • fnmatch 只用于 匹配字符串模式,通常結合 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()

嚴格區(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()

將通配符模式轉換為正則表達式(regex)。

import fnmatch

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

輸出:

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

可以用于 re.match() 進行更復雜的匹配。

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

import os
import fnmatch

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

print(txt_files)

6. fnmatch vs glob

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

7. 總結

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

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

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

相關文章

  • Python中的tuple元組詳細介紹

    Python中的tuple元組詳細介紹

    這篇文章主要介紹了Python中的tuple元組詳細介紹,本文講解了Tuple 與 list 的相同之處、Tuple 不存在的方法、用 Tuple 的好處、Tuple 與 list 的轉換等內容,需要的朋友可以參考下
    2015-02-02
  • PaddleOCR 識別表情包文字示例詳解

    PaddleOCR 識別表情包文字示例詳解

    這篇文章主要為大家介紹了PaddleOCR 識別表情包文字示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-08-08
  • 淺談FastAPI到底用不用async問題

    淺談FastAPI到底用不用async問題

    這篇文章主要介紹了FastAPI到底用不用async問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-06-06
  • Node.js 和 Python之間該選擇哪個?

    Node.js 和 Python之間該選擇哪個?

    這篇文章主要介紹了Node.js 和 Python之間的優(yōu)劣,并得出結論,希望能為你在項目選擇哪種技術時提供一些幫助。感興趣的朋友可以了解下
    2020-08-08
  • Python 階乘詳解

    Python 階乘詳解

    這篇文章主要介紹了詳解用python的階乘,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-10-10
  • 用Python代碼自動生成文獻的IEEE引用格式的實現

    用Python代碼自動生成文獻的IEEE引用格式的實現

    這篇文章主要介紹了用Python代碼自動生成文獻的IEEE引用格式的實現,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-03-03
  • Python實現微信好友數據爬取及分析

    Python實現微信好友數據爬取及分析

    這篇文章會基于Python對微信好友進行數據分析,這里選擇的維度主要有:性別、頭像、簽名、位置,主要采用圖表和詞云兩種形式來呈現結果,其中,對文本類信息會采用詞頻分析和情感分析兩種方法,感興趣的小伙伴可以了解一下
    2021-12-12
  • python文件和目錄操作函數小結

    python文件和目錄操作函數小結

    這篇文章主要介紹了python文件和目錄操作函數小結,主要涉及到os模塊和shutil模塊的一些方法,需要的朋友可以參考下
    2014-07-07
  • 使用Python的Bottle框架寫一個簡單的服務接口的示例

    使用Python的Bottle框架寫一個簡單的服務接口的示例

    這篇文章主要介紹了使用Python的Bottle框架寫一個簡單的服務接口的示例,基于Linux系統(tǒng)環(huán)境,需要的朋友可以參考下
    2015-08-08
  • 基于Python實現一鍵獲取電腦瀏覽器的賬號密碼

    基于Python實現一鍵獲取電腦瀏覽器的賬號密碼

    發(fā)現很多人在學校圖書館喜歡用電腦占座,而且出去的時候經常不鎖屏,為了讓大家養(yǎng)成良好的習慣,本文將分享一個小程序,可以快速獲取你存儲在電腦瀏覽器中的所有賬號和密碼,感興趣的可以了解一下
    2022-05-05

最新評論