[英]Convert For Loop to List Comprehension: Testing if elements in list 2 are partial match for elements in list 1
[英]Partial match filename with list elements
文件夾中的文件名:
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']]
它將為您提供所有文件名的列表。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.