迭代目录并仅查找名称以特定字符串开头的文件

时间:2017-07-21 07:01:16

标签: python

我有一个目录路径,在这个路径中有几个文件夹。所以我正在尝试构建一个脚本,它可以找到所有的xml文件,文件名必须以report开头。到目前为止,我已经能够遍历所有目录,但我还不知道如何继续。这是我的代码:

def search_xml_report(rootdir):
     for subdir, dirs, files in os.walk(rootdir):
        for file in files:
            print os.path.join(subdir,file) # print statement just for testing

2 个答案:

答案 0 :(得分:1)

您可以使用str.startswith

def search_xml_report(rootdir):
    for subdir, dirs, files in os.walk(rootdir):
        for file in files:
            if file.startswith('report'):
                yield subdir, file

答案 1 :(得分:0)

str.startswithos.path.splitext

一起使用

os.path.splitext:从路径名中拆分扩展名。扩展是从最后一个点到结尾的所有内容,忽略了前导点。返回"(root,ext)&#34 ;;分机可能是空的。

 if file.startswith('report') and os.path.splitext(filepath+filename)[-1] == '.xml':
     return file