我有两个列表:
列表1
filenames = ['K853.Z', 'K853.N', 'K853.E', 'K400.Z', 'K400.N', 'K400.E']
列表2
l = ['K853', 'K400']
我想遍历filenames
列表,并按l
列表对字符串进行分组。
我尝试了以下方法:
for name in filenames:
for i in l:
if i in name:
print(name)
但这只是打印第一个列表。我已经看到了Pandas
groupby
方法,但是在这种情况下我不知道如何使用它。
答案 0 :(得分:0)
您可以只使用这样的列表生成器:
new = [[name for name in filenames if(name.startswith(prefix))] for prefix in l]
这将为您提供一个列表列表,其中对于l的每个索引,您将获得一个文件列表,其前缀在新列表中的相同索引处。