说我有名单
a=[1,2,1,2,1,3]
如果a中的所有元素都是可混合的(就像那种情况一样),那么就可以完成这项任务:
list(set(a))
但是,如果
a=[[1,2],[1,2],[1,3]]
答案 0 :(得分:11)
Python 2
>>> from itertools import groupby
>>> a = [[1,2],[1,2],[1,3]]
>>> [k for k,v in groupby(sorted(a))]
[[1, 2], [1, 3]]
也适用于Python 3,但要注意所有元素都必须是可订购的类型。
答案 1 :(得分:0)
此集合理解适用于列表列表以生成一组元组:
>>> {(tuple(e)) for e in a}
set([(1, 2), (1, 3)])
然后使用它将其再次转换为列表而不重复:
>>> [list(x) for x in {(tuple(e)) for e in a}]
[[1, 2], [1, 3]]