Python使用:模块实现文件名匹配?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
:模块主要用于文件名称的匹配,其能力比简单的字符串匹配更强大,但比使用正则表达式相比稍弱,如果在数据处理操作中,只需要使用简单的通配符就能完成文件名的匹配,则使用:模块是不错的选择。
:模块中,常用的函数及其功能如表1所示。
Python:模块常用函数及功能
:模块匹配文件名的模式使用的就是UNIX shell风格,其支持使用如下几个通配符:
- <李> *:可匹配任意个任意字符。李> <李> ?:可匹配一个任意字符。李> <李>[字符序列):可匹配中括号里字符序列中的任意字符。该字符序列也支持中画线表示法。比如[a - c]可代表a, b和c字符中任意一个。李> <李> [!字符序列]:可匹配不在中括号里字符序列中的任意字符。李>
例如,下面程序演示表1中一些函数的用法及功能:
进口: #过滤器() print (fnmatch.filter ([& # 39; dlsf& # 39; & # 39; ewro.txt& # 39;, & # 39; te.py& # 39;, & # 39; youe.py& # 39;], & # 39; * . txt # 39;)) #:() 文件的[& # 39;word.doc& # 39; & # 39; index.py& # 39;, & # 39; my_file.txt& # 39;): 如果fnmatch.fnmatch(文件,& # 39;* . txt # 39;): 打印(文件) # fnmatchcase () 打印([addr addr的[& # 39;word.doc& # 39; & # 39; index.py& # 39;, & # 39; my_file.txt& # 39;, & # 39; a.TXT& # 39;]:。fnmatchcase (addr, & # 39; * . txt # 39;)]) #翻译() print (fnmatch.translate (& # 39; * b.txt& # 39;))
程序执行结果为:
[& # 39; ewro.txt& # 39;]
引用>
my_file.txt
[& # 39; my_file.txt& # 39;]
(和# 63;销售:a。* b \ . txt) \ Z关于Python使用:模块实现文件名匹配问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注行业资讯频道了解更多相关知识。
Python使用:模块实现文件名匹配