Python 3.5+
?
從Python版本3.5開始,glob模塊支持該"**"指令(僅當(dāng)您傳遞recursive標(biāo)志時(shí)才會(huì)解析該指令):
?
import glob
for filename in glob.iglob('src/**/*.c', recursive=True):
print(filename)
如果你需要一個(gè)列表,只需使用glob.glob而不是glob.iglob。
import fnmatch
import os
matches = []
for root, dirnames, filenames in os.walk('src'):
for filename in fnmatch.filter(filenames, '*.c'):
matches.append(os.path.join(root, filename))
匹配以點(diǎn)(。)開頭的文件的情況; 像當(dāng)前目錄中的文件或基于Unix的系統(tǒng)上的隱藏文件,請使用os.walk下面的解決方案。
?
Python 2.2到3.4
?
對于較早的Python版本,從Python 2.2開始,使用os.walk遞歸遍歷一個(gè)目錄并fnmatch.filter匹配一個(gè)簡單的表達(dá)式:
?
?
Python 2.1及更早的版本
?
對于更老的Python版本,使用glob.glob每個(gè)文件名而不是fnmatch.filter。
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯(lián)系: 360901061
您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
