在python中使用glob读取具有多个模式的文件名
在一个目录中,我有多个文件。但我只想获取少数具有特定模式的csv文件 范例 目录中的文件:abc.csv、xyz.csv、uvw.csv、sampl.csv、code.py、commands.txt、abc_1.csv、sam.csv、xyz_1.csv、uvw_1.csv、mul.csv、pp.csv 我需要获取csv文件名:abc.csv,xyz.csv,uvw.csv,abc_1.csv,xyz_1.csv,uvw_1.csv,abc_2.csv,xyz_2.csv,uvw_2.csv,。。。。(有时文件名中的数字会发生变化,例如abc_3.csv) 在python中,我们可以使用 files=glob.glob(“*.csv”) 但是对于上述要求,如何使用Regex修改上述行或任何其他有效方法 Ex:在python中使用glob读取具有多个模式的文件名,python,csv,glob,Python,Csv,Glob,在一个目录中,我有多个文件。但我只想获取少数具有特定模式的csv文件 范例 目录中的文件:abc.csv、xyz.csv、uvw.csv、sampl.csv、code.py、commands.txt、abc_1.csv、sam.csv、xyz_1.csv、uvw_1.csv、mul.csv、pp.csv 我需要获取csv文件名:abc.csv,xyz.csv,uvw.csv,abc_1.csv,xyz_1.csv,uvw_1.csv,abc_2.csv,xyz_2.csv,uvw_2.csv,。
import glob
import os
import re
for filename in glob.glob(r"Path\*.csv"):
if re.match(r"[a-z]{3}(_\d*)?\.csv", os.path.basename(filename)):
print(filename)