使用Python在同一目录中查找相同类型的文件

时间:2015-12-20 02:11:55

标签: python

有没有办法找到指定的特定文件类型的所有文件,并递归调用它们直到您已读取所有文件? (这是在Ubuntu中)

例如:

在目录INSTALLED_APPS中,您有文件/homea.pngb.txtc.txtd.txt 我想阅读e.jpeg的所有文件。

如何在Python中这样做?

子问题:是否可以使用两种不同的文件类型执行上述操作?

2 个答案:

答案 0 :(得分:2)

您可以使用glob.glob()执行此操作:

>>> from glob import glob

>>> glob('/home/*.txt')
['/home/c.txt', '/home/d.txt', '/home/b.txt']

>>> [glob(i) for i in ['/home/*.txt', '/home/*.jpeg']]
[['/home/c.txt', '/home/d.txt', '/home/b.txt'], ['/home/e.jpeg']]
>>> 

答案 1 :(得分:1)

假设您正在使用文件的扩展名来猜测类型,您可以使用os.listdir并根据文件名过滤文件:

import os

for filename in os.listdir('.'):
    if filename.endswith('.txt'):
        # Do what you want to do