使用Python os.walk来标识文件列表

ens*_*are 1 python

可能重复:
在Python中,在具有特定扩展名的目录中构建文件列表的最快方法

我目前正在使用os.walk以递归方式扫描标识.MOV文件的目录

def fileList():
    matches = []
    for root, dirnames, filenames in os.walk(source):
        for filename in fnmatch.filter(filenames, '*.mov'):
            matches.append(os.path.join(root, filename))
    return matches
Run Code Online (Sandbox Code Playgroud)

如何扩展它以识别多个文件,例如.mov,.MOV,.avi,.mpg?

谢谢.

Ray*_*ger 8

尝试这样的事情:

def fileList(source):
    matches = []
    for root, dirnames, filenames in os.walk(source):
        for filename in filenames:
            if filename.endswith(('.mov', '.MOV', '.avi', '.mpg')):
                matches.append(os.path.join(root, filename))
    return matches
Run Code Online (Sandbox Code Playgroud)