欢迎访问宙启技术站
智能推送

使用glob模块在Python中查找指定格式的文件

发布时间:2023-12-25 11:55:44

在Python中,可以使用glob模块来查找指定格式的文件。glob模块提供了一个函数,可以根据指定的通配符模式匹配文件路径。下面是glob模块的使用方法和一个示例。

首先,需要导入glob模块:

import glob

然后,可以使用glob模块中的glob函数来查找文件。该函数接受一个字符串参数,表示要匹配的文件路径模式。模式可以包含通配符,如*和?。下面是glob函数的使用示例:

files = glob.glob('*.txt')

上面的代码将匹配当前工作目录中以.txt结尾的所有文件,并返回一个列表,其中包含匹配的文件路径。

另外,还可以在模式中指定文件路径的一部分。例如,可以在模式中包含文件夹路径:

files = glob.glob('data/*.csv')

上面的代码将匹配data文件夹中所有以.csv结尾的文件,并返回一个列表。

glob函数还支持递归搜索。如果要在子文件夹中搜索文件,可以在模式中使用**通配符:

files = glob.glob('data/**/*.csv', recursive=True)

上面的代码将在data文件夹及其所有子文件夹中搜索以.csv结尾的文件,并返回一个列表。

除了glob函数,glob模块还提供了其他一些有用的函数,如iglob和escape。iglob函数与glob函数类似,但它返回一个迭代器,而不是列表。escape函数用于转义字符串中的特殊字符,以便能够正确匹配文件路径模式。

下面是一个完整的示例,演示如何使用glob模块查找当前工作目录下的所有以.py结尾的文件:

import glob

# 使用glob函数查找所有以.py结尾的文件
files = glob.glob('*.py')

# 打印匹配的文件路径
for file in files:
    print(file)

上面的代码将打印当前工作目录中所有以.py结尾的文件的路径。

总结:

- 可以使用glob模块来查找指定格式的文件

- glob函数用于匹配文件路径模式

- 可以在模式中使用通配符和文件夹路径来进行匹配

- 还可以使用递归搜索来查找子文件夹中的文件

- glob模块还提供了其他一些有用的函数,如iglob和escape