更改列表以进行设置而不更改元素的顺序

时间:2019-05-30 17:09:07

标签: python list

我想从列表中删除那些重复次数超过设置但要更改顺序的元素

[4,6,2,6,1,2] should become [4,6,2,1]

我正在寻找任何内置方法或列表理解

1 个答案:

答案 0 :(得分:0)

这应该做到:使用lambda函数并使用set删除重复项。在Python 2.7上进行了测试

mylist = [4,6,2,6,1,2]
reduce(lambda r, v: v in r[1] and r or (r[0].append(v) or r[1].add(v)) or r, mylist, ([], set()))[0]