首页 > 解决方案 > 删除重复项(python)

问题描述

我有一个这样的清单;

a=[['2019', '08'], ['2018', '10'], ['2019', '08'], ['2019', '08'], ['2018', '10'], ['2019', '02']]

如何删除重复项。

[['2019', '08'], ['2018', '10'], ['2019', '02']]

标签: pythonpython-3.x

解决方案


如果顺序重要(但算法复杂性不重要):

b = []
for x in a:
    if x not in b:
        b.append(x)

如果复杂性相关,这里有一个 O() 解决方案:

seen = set()
b = []
for x in a:
    t = tuple(x)
    if t not in seen:
        b.append(x)
        seen.add(t)

推荐阅读