如何删除列表中的重复值(坐标)

时间:2018-11-20 08:49:02

标签: python list

我想问一下如何删除此类列表中的重复项

ppoint=[[1,2],[1,2],[3,4],[5,6],[7,3],[3,4],[5,6]]

我尝试了set(),但仍然出现以下错误:无法哈希的列表

ppoint=[[1,2],[1,2],[3,4],[5,6],[7,3],[3,4],[5,6]]
fpoint=list(set(ppoint))
print (fpoint)

我想得到

[[1,2],[3,4],[5,6],[7,3]

我认为set()仅适用于单值idexe,是否有其他替代方法?

2 个答案:

答案 0 :(得分:2)

您可以这样做

In [9]: list(set(map(tuple,ppoint)))
Out[9]: [(1, 2), (5, 6), (3, 4), (7, 3)]

答案 1 :(得分:0)

您可以只使用if语句吗?但是,如果您看一下collections模块,我相信这将是一个更简单的解决方案。

if语句看起来像:

for coords in ppoint:
    if coords not in fpoint:
        newlist.append(coords)