在通过glob导入的文件列表中选择文件

我正在使用以下代码导入具有glob的文件列表:

fileList = glob.glob('./final_clim/*.shp')

然后,我需要遍历此过程,选择某些文件并通过这些文件进行遍历。我尝试编辑字符串或使用列表理解,但是文件名中有2套数字,无法解决该问题。示例文件名是:

gla14_eco_23_clim_23

gla14_eco23_clim_24

gla14_eco24_clim_23

因此,我需要将所有“ eco23”文件分组在一起以运行一些代码,然后再运行“ eco24”,但是我有数百个“ ecos”,因此不能手动拆分。

我尝试过:

for file in fileList:
    eco = [f for f in fileList if ("eco_23",f)

我尝试使用re.findall,但无法完全解决

我也尝试过:

for file in fileList:
    hd,tl = path.split(file)
    name = tl.replace('gla14_eco_',"") etc..

我似乎无法解决该怎么做。我可能会使用字典将字母的后2个数字替换为字母,以使其变得更容易?有人可以帮忙吗?

hhhhj2006 回答:在通过glob导入的文件列表中选择文件

我相信您的清单理解需要纠正。

for i in range(0,825):
    eco = [f for f in fileList if 'eco_'+str(i)+'_' in f]
,

如果您了解所有eco23等信息,则可以遍历并使用它:

for i in range(0,825):
    fileList = glob.glob('./final_clim/*eco_'+str(i)+'*.shp')
本文链接:https://www.f2er.com/3165118.html

大家都在问