如何在带有 pythonic 代码的目录中查找特定文件?

how to find specific files in a directory with a pythonic code?

我要在包含许多子目录的目录中查找特定文件

有没有pythonic的方法来重写这个?如果可能,我想避免第一个 for 循环:

mytypes = [".txt", ".doc", ".docx"]

for ext in mytypes:
    for filename in glob.iglob(directory+"/**/*/"+ext, recursive=True):
        print(filename)

如果你能指出正确的方向,谢谢你。这工作正常,但我想优化代码,因为 mytypes 列表可能会变大并且目录很重。 这是我尝试过的方法,但我相信有更好的方法...

如果您只想过滤一些文件,您仍然需要一个 mytypes 变量。

话虽如此,您可以使用 pythonic 方法来避免 for 循环:列表理解。

mytypes = [".txt", ".doc", ".docx"]

files = [f for ext in mytypes for f in glob.glob(directory+"/**/*/"+ext)]

print(files)