当前位置 : 主页 > 编程语言 > python >

Python:如何删除列表列表中的重复列表?

来源:互联网 收集:自由互联 发布时间:2021-06-25
参见英文答案 Removing duplicates from a list of lists10个 我想从列表列表中删除所有重复列表. 所以我有一个像这样的列表. a = [[1,2],[1,2],[3,4,5],[3,4,5],[3,4,5]] 我希望有: b = [[1,2],[3,4,5]] 我不知道
参见英文答案 > Removing duplicates from a list of lists                                    10个
我想从列表列表中删除所有重复列表.

所以我有一个像这样的列表.

a = [[1,2],[1,2],[3,4,5],[3,4,5],[3,4,5]]

我希望有:

b = [[1,2],[3,4,5]]

我不知道该怎么做.

谢谢

你可以使用一套:

b_set = set(map(tuple,a))  #need to convert the inner lists to tuples so they are hashable
b = map(list,b_set) #Now convert tuples back into lists (maybe unnecessary?)

或者,如果您更喜欢列表推导/生成器:

b_set = set(tuple(x) for x in a)
b = [ list(x) for x in b_set ]

最后,如果订单很重要,您可以随时排序b:

b.sort(key = lambda x: a.index(x) )
网友评论