You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过单次glob.glob()调用匹配不同目录的多后缀文件?

一次调用glob.glob()获取多路径多后缀文件列表

嘿,这个需求很好实现!你可以借助glob的大括号扩展语法,把两个不同的路径模式合并成一个统一的字符串,这样只需要一次调用就能匹配到所有符合要求的文件。

具体实现代码

import glob

# 合并后的统一路径模式
target_pattern = "/ABC/{DEF/HIJ,LMN/HIJ[0-3]}/*.{data,index}"
# 一次调用获取所有目标文件
file_list = glob.glob(target_pattern)

为什么这样可行?

这里的核心是glob对大括号{...}的解析规则:

  • {DEF/HIJ,LMN/HIJ[0-3]}会被解析为同时匹配DEF/HIJ和LMN/HIJ[0-3]这两个目录路径,相当于把两个目录分支的规则合并到了一起。
  • 后面的*.{data,index}则会匹配对应目录下所有后缀为.data或.index的文件,这部分你本来就已经在用了。

小提示

如果是在Windows系统下使用,记得把路径分隔符换成\,并且建议用原始字符串避免转义问题,比如:

target_pattern = r"C:\ABC\{DEF\HIJ,LMN\HIJ[0-3]}\*.{data,index}"

内容的提问来源于stack exchange,提问作者Ethan Tan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.28 09:33:08