如何删除python列表中除关键字之外的所有重复列表?

时间:2018-06-27 01:03:12

标签: python list lambda

我正在尝试从python列表中删除所有重复项,而不是存储在另一个列表中的关键字。

例如:

a = ['a','a','b','b','c','c']
keywords = ['a','b']
some_func(a,keywords) = ['a','a','b','b','c']

我该如何以最pythonic的方式做到这一点?

1 个答案:

答案 0 :(得分:0)

这是使用简单迭代的一种方法。

a = ['a','a','b','b','c','c']
keywords = ['a','b']

def removeDup(a, keywords):
    res = []
    for i in set(a):
        if i in keywords:
            res.extend([i]*a.count(i))
        else:
            res.append(i)
    return res
print(removeDup(a, keywords))

输出:

['a', 'a', 'c', 'b', 'b']
  • 注意:这可能会破坏输出的顺序。