将文件名与列表元素部分匹配



文件夹中的文件名:

abc jik1.csv ; abc lkj6.csv ; abc rty8.csv ;  
xyz poi4.csv ; xyz jgh7.csv  

List: ['abc','xyz']

通过循环:
我想将文件导入df,比如所有以列表的第一个元素开始的文件,即abc进行一些计算,然后通过循环等方式导入以第二个元素xyz开始的文件。

问题:如何将abc列表元素与通配符*组合,使文件名变为abc*.csv,这将使我可以将3个abc文件导入到df中?

尝试:

for lst in lst:
element = lst[0:3]
print(element)    
df = pd.read_csv( element +'*.csv' )

使用glob

from glob import glob
files = glob('abc*.csv')
for f in files:
df = pd.read_csv(f)

获取所有文件:

files = glob('abc*.csv') + glob('xyz*.csv')

对于多个文件前缀:

files = [glob('{}*.csv'.format(i)) for i in ['abc', 'xyz']]

它将为您提供所有文件名的列表。

相关内容

  • 没有找到相关文章

最新更新