我正在遍歷一個目錄,并嘗試(0, 0, 0)使用fnmatch.fnmatch(filename,'*(0, 0, 0)*'). 看起來括號和逗號正在拋棄它,并匹配像(0, 1, 1)我不想要的字符串。相關代碼段是: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我的理解是轉義括號應該可以解決它,但沒有運氣。解決此問題的最佳方法是什么?
2 回答

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