python之glob的用法詳解
glob 是 Python 中用于文件模式匹配的一個(gè)模塊。它使用 Unix shell-style 的通配符來(lái)進(jìn)行匹配,并返回所有匹配的文件路徑列表。
下面是一些 glob 的基本用法:
獲取特定擴(kuò)展名的所有文件
如果你想獲取當(dāng)前目錄下所有的 .txt 文件,可以使用:
import glob txt_files = glob.glob('*.txt') print(txt_files)
獲取特定目錄下的所有文件
如果你想獲取 data 目錄下所有的文件,可以使用:
import glob all_files = glob.glob('./*') print(all_files)
遞歸獲取所有文件
使用 ** 可以遞歸地匹配所有子目錄中的文件。例如,獲取 data 目錄及其所有子目錄下的 .txt 文件:
import glob txt_files_recursive = glob.glob('data/**/*.txt', recursive=True)
注意:recursive=True 參數(shù)確保模式會(huì)遞歸地匹配子目錄。這在 glob 的某些版本中可能是必需的。
轉(zhuǎn)義特殊字符
如果你需要匹配的文件名包含特殊字符(如 [、]、*、? 等),你可以使用 glob.escape 來(lái)轉(zhuǎn)義這些字符:
import glob escaped_pattern = glob.escape('my[special]file*') matched_files = glob.glob(escaped_pattern)
iglob
除了 glob 函數(shù)外,glob 模塊還提供了一個(gè) iglob 函數(shù),它是一個(gè)迭代器版本的 glob。當(dāng)你處理大量文件時(shí),使用 iglob 可以節(jié)省內(nèi)存,因?yàn)樗粫?huì)一次性加載所有匹配的文件路徑,而是每次迭代時(shí)加載一個(gè)。
import glob for file in glob.iglob('*.txt'): print(file)
到此這篇關(guān)于python之glob的用法詳解的文章就介紹到這了,更多相關(guān)python glob內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python+pandas編寫命令行腳本操作excel的tips詳情
這篇文章主要介紹了Python+pandas編寫命令行腳本操作excel的tips詳情,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的朋友可以參考一下2022-07-07Python實(shí)現(xiàn)哲學(xué)家就餐問(wèn)題實(shí)例代碼
這篇文章主要給大家介紹了關(guān)于Python實(shí)現(xiàn)哲學(xué)家就餐問(wèn)題的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-11-11python實(shí)現(xiàn)MD5進(jìn)行文件去重的示例代碼
工作中偶爾會(huì)收到一大堆文件,名稱各不相同,分析文件的時(shí)候發(fā)現(xiàn)有不少重復(fù)的文件,導(dǎo)致工作效率低下,那么,這里就寫了一個(gè)python腳本實(shí)現(xiàn)文件去重功能,感興趣的就一起來(lái)了解一下2021-07-07python可擴(kuò)展的Blender 3D插件開發(fā)匯總
這篇文章主要為大家介紹了python可擴(kuò)展的Blender 3D插件開發(fā)匯總,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-09-09Python?虛擬環(huán)境遷移到其他電腦的實(shí)現(xiàn)
本文主要介紹了Python?虛擬環(huán)境遷移到其他電腦的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-04-04Pytorch平均池化nn.AvgPool2d()使用方法實(shí)例
平均池化層,又叫平均匯聚層,下面這篇文章主要給大家介紹了關(guān)于Pytorch平均池化nn.AvgPool2d()使用方法的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-02-02Python??序列化反序列化和異常處理的問(wèn)題小結(jié)
這篇文章主要介紹了Python?序列化反序列化和異常處理,本文結(jié)合示例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-12-12