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

使用glob模块在Python中筛选文件类型和文件名

发布时间:2023-12-25 11:58:30

在Python中,我们可以使用glob模块来筛选文件类型和文件名。glob模块提供了一个在文件系统中查找文件和文件夹路径的功能,可以使用通配符进行筛选。

要使用glob模块,我们首先需要导入它:

import glob

接下来,我们可以使用glob.glob()函数来查找路径匹配的文件和文件夹。glob.glob()函数接受一个模式作为参数,并返回所有匹配的路径的列表。

下面是一些常用的通配符模式及其含义:

- *:匹配零个或多个字符

- ?:匹配任意单个字符

- [characters]:匹配方括号中的任意一个字符

- [!characters]:匹配不在方括号中的任意一个字符

- **:匹配任意路径中的任意部分

- **/:递归匹配任意路径中的任意部分

下面我们将通过一些例子来具体看看如何使用glob模块来筛选文件类型和文件名。

### 筛选指定类型的文件

我们可以使用通配符来筛选指定类型的文件。例如,如果我们想查找所有的文本文件,可以使用*.txt模式。

import glob

text_files = glob.glob('*.txt')
print(text_files)

上面的代码将打印出当前目录中所有的文本文件的文件名列表。

### 筛选指定名称的文件

我们也可以使用通配符来筛选指定名称的文件。例如,如果我们想查找文件名以“test”开头的所有文件,可以使用test*模式。

import glob

files_start_with_test = glob.glob('test*')
print(files_start_with_test)

上面的代码将打印出当前目录中所有以“test”开头的文件的文件名列表。

### 筛选指定文件夹下的文件

除了筛选当前目录中的文件外,我们也可以筛选指定文件夹下的文件。可以在模式中指定文件夹的路径。

import glob

text_files = glob.glob('path/to/folder/*.txt')
print(text_files)

上面的代码将打印出指定文件夹中所有的文本文件的文件名列表。

### 筛选多个文件类型

我们也可以使用通配符来筛选多个文件类型的文件。可以在模式中使用[]来指定多个文件类型。

import glob

files = glob.glob('*.[txt,png]')
print(files)

上面的代码将打印出当前目录中所有的文本文件和图片文件的文件名列表。

### 筛选带有特定名称的文件类型

我们可以使用通配符来筛选包含特定名称的文件类型。可以在模式中使用*[]来指定名称和文件类型。

import glob

files = glob.glob('*[test]*.[txt,png]')
print(files)

上面的代码将打印出当前目录中所有文件名中包含“test”且是文本文件或图片文件的文件名列表。

以上就是使用glob模块在Python中筛选文件类型和文件名的一些示例。希望可以帮助你更好地使用glob模块来查找文件和文件夹路径。