我正在遍歷一個(gè)目錄,并嘗試(0, 0, 0)使用fnmatch.fnmatch(filename,'*(0, 0, 0)*'). 看起來括號(hào)和逗號(hào)正在拋棄它,并匹配像(0, 1, 1)我不想要的字符串。相關(guān)代碼段是:for root, dirs, files in os.walk(data_dir): for file in files: filename = os.path.join(root, file) if fnmatch.fnmatch(filename,'*\(0, 0, 0\)*'): # do stuff目錄包含以下文件:\c_(0, 0, 0)\data.txt\c_(0, 05, 05)\data.txt\c_(0, 05, 1)\data.txt\c_(0, 1, 0)\data.txt我的理解是轉(zhuǎn)義括號(hào)應(yīng)該可以解決它,但沒有運(yùn)氣。解決此問題的最佳方法是什么?
2 回答

慕碼人8056858
TA貢獻(xiàn)1803條經(jīng)驗(yàn) 獲得超6個(gè)贊
files_list=[]
for filename in os.listdir(r'DirPath'):
if filename.count('(0, 0, 0)'):
files_list.append(filename)
添加回答
舉報(bào)
0/150
提交
取消