在Python的列表列表中删除重复的列表

亚历杭德罗·萨佐(Alejandro Sazo)

我在这里看到了一些非常相关的问题,但是他们的答案对我来说不起作用。我有一个列表列表,其中有些子列表是重复的,但是它们的元素可能会混乱。例如

g = [[1, 2, 3], [3, 2, 1], [1, 3, 2], [9, 0, 1], [4, 3, 2]]

根据我的问题,输出应该自然是:

g = [[1,2,3],[9,0,1],[4,3,2]]

我试过了,set但是只删除了那些相等的列表(我认为它应该起作用,因为根据定义,集合是无序的)。我访问过的其他问题仅包含示例,这些示例具有完全重复或重复的列表,例如:Python:如何删除列表中的重复列表?目前,输出顺序(对于列表和子列表)不是问题。

(ab)使用列表版本的副作用版本:

seen = set()

[x for x in g if frozenset(x) not in seen and not seen.add(frozenset(x))]
Out[4]: [[1, 2, 3], [9, 0, 1], [4, 3, 2]]

对于那些不喜欢以这种方式使用副作用的人(与我不同):

res = []
seen = set()

for x in g:
    x_set = frozenset(x)
    if x_set not in seen:
        res.append(x)
        seen.add(x_set)

之所以将frozensets添加到集合中,是因为您只能将可哈希对象添加到中set,而vanilla sets不可哈希。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在Python的列表列表中删除重复的列表

来自分类Dev

删除列表列表中的重复项

来自分类Dev

Python:从列表列表中删除列表?

来自分类Dev

从python中的列表列表中删除外部列表

来自分类Dev

如何从列表列表中删除重复的条目

来自分类Dev

从df /列表列表中删除特定的重复项

来自分类Dev

展平,删除重复项并在python中对列表列表进行排序

来自分类Dev

Python-如何在列表列表中删除重复的元组?

来自分类Dev

从python中的列表列表中删除异常值

来自分类Dev

使用'del'从python中的列表列表中删除项目

来自分类Dev

如何从 Python 中的列表列表中删除空格?

来自分类Dev

Python中列表列表的列表理解

来自分类Dev

Python从列表列表中删除空元素

来自分类Dev

从列表列表中删除第 n 行 - Python

来自分类Dev

如何遍历列表列表列表列表列表... Python中的坐标对列表列表?

来自分类Dev

根据内部列表元素的比较从列表列表中删除重复项

来自分类Dev

通过使用列表理解从列表列表中删除重复项

来自分类Dev

从列表列表中删除NA

来自分类Dev

从列表列表中删除停用词

来自分类Dev

在列表列表中循环,检查并删除?

来自分类Dev

从列表列表中删除特定短语

来自分类Dev

从列表中删除重复的对

来自分类Dev

Python比较列表与列表列表以检查重复项

来自分类Dev

计算重复列表的频率-在列表列表中

来自分类Dev

识别列表列表中的重复列表?

来自分类Dev

python中列表(列表列表)中列表的交集

来自分类Dev

创建和使用列表列表列表:在Python中

来自分类Dev

创建和使用列表列表列表:在Python中

来自分类Dev

从“列表列表列表”到“列表列表”-Python

Related 相关文章

热门标签

归档