fnmatch 用法
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
fnmatch 用法
fnmatch是一个Python中用于文件名匹配的模块,它可以根据特定的模式来匹配文件名,是 Python 中一个非常实用的模块。
本文将介绍 fnmatch 的使用方法。
fnmatch 模块主要包含两个函数:fnmatch 和 fnmatchcase。
fnmatch 函数是不区分大小写的文件名匹配,其语法如下:
```
fnmatch.fnmatch(name, pat)
```
其中,name 表示要匹配的文件名,pat 表示匹配的模式,可以使用通配符 * 和 ?,* 匹配任意字符(包括空字符),? 匹配任意单个字符。
例如,下面的代码可以匹配出当前目录下所有以 .py 结尾的文件:
```
import fnmatch
import os
for file in os.listdir('.'):
if fnmatch.fnmatch(file, '*.py'):
print(file)
```
fnmatchcase 函数是区分大小写的文件名匹配,其语法与
fnmatch 函数一致,只是它会严格按照大小写进行匹配。
除了使用单个通配符 * 和 ?,fnmatch 还支持使用 [] 匹配一组字符。
例如,下面的代码可以匹配出所有以字母开头的文件名:
```
import fnmatch
import os
for file in os.listdir('.'):
if fnmatch.fnmatch(file, '[a-zA-Z]*'):
print(file)
```
除了通配符外,fnmatch 还支持使用转义特殊字符,例如下面的代码可以匹配出所有以 $ 开头的文件:
```
import fnmatch
import os
for file in os.listdir('.'):
if fnmatch.fnmatch(file, r'$*'):
print(file)
```
需要注意的是,fnmatch 函数只能匹配文件名,而不能匹配路径。
如果需要匹配路径,可以使用 glob 模块。
综上所述,fnmatch 模块是 Python 中一个非常实用的模块,通
过使用它,我们可以很方便地匹配出符合特定模式的文件名。