C:\build\*.txt
提供,但它只适用于根目录,我想在c:\ build \中查找所有文本文件,例如c:\build\files\ha.txt
。
怎么可能? Thankss。
答案 0 :(得分:5)
请注意glob.glob
将接受unix shell通配符而不是正则表达式对象(请参阅documentation)。
您可以使用.txt
完成从所有子目录获取所有os.walk
文件的壮举。给你这样一个列表的方法可能是这样的:
def get_all_txts_on_dir(path):
import os
ret = []
for root, dir, files in os.walk(path):
for name in files:
if name.endswith('.txt'):
ret.append(name)
return ret
答案 1 :(得分:0)
glob
不使用正则表达式,它有一套更简单的规则。
另一种方法是使用os.walk()
并使用正则表达式执行自己匹配的标题。