Python中glob模块 文件路径匹配模块glob的通配符使用技巧

pythonglob模块通过通配符匹配文件路径,常用符号包括、?和[]。匹配任意数量字符但不跨目录,如.txt匹配当前目录所有.txt文件;*搭配recursive=true可递归搜索;?匹配单个字符,如log_2024-01-0?.log适用于固定格式变化日志;[]限定字符集合,如[abc].txt匹配a/b/c.txt;注意默认不报错无结果且区分大小写环境差异。

在Python中,glob模块常用于查找符合特定规则的文件路径名。它不像正则那样复杂,但通配符的使用技巧足够应对大多数日常需求。关键在于掌握几个常用符号,并知道它们适用的场景。


通配符 * 的灵活用法

* 是最常用的通配符之一,代表“任意数量的字符(不包括目录分隔符)”。比如:

  • *.txt:匹配当前目录下所有以 .txt 结尾的文件。
  • data_*.csv:匹配类似 data_2023.csv、data_backup.csv 这样的文件名。

一个容易忽略的地方是,* 不会跨目录匹配。例如,*/\*.py 可以匹配子目录中的 .py 文件,但不会进入更深一层的子目录。

如果你想递归搜索所有子目录下的 .py 文件,可以使用 **/ 搭配 recursive=True 参数:

立即学习“Python免费学习笔记(深入)”;

import globglob.glob('**/*.py', recursive=True)

登录后复制

文章来自互联网,不代表电脑知识网立场。发布者:,转载请注明出处:https://www.pcxun.com/n/714768.html

(0)
上一篇 2025-06-09 00:05
下一篇 2025-06-09 00:35

相关推荐