如何使用Python将字符串列表与另一个字符串列表分组?

时间:2019-10-15 01:25:41

标签: python-3.x loops pandas-groupby python-3.7

我有两个列表:

列表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方法,但是在这种情况下我不知道如何使用它。

1 个答案:

答案 0 :(得分:0)

您可以只使用这样的列表生成器:

new = [[name for name in filenames if(name.startswith(prefix))] for prefix in l]

这将为您提供一个列表列表,其中对于l的每个索引,您将获得一个文件列表,其前缀在新列表中的相同索引处。