python中列表列表的集合

玛雅克·贾恩(Mayank Jain)

我有一个清单清单

mat = [[1,2,3],[4,5,6],[1,2,3],[7,8,9],[4,5,6]]

我想转换为一个集合,即删除重复列表并从中创建一个仅包含唯一列表的新列表。

在上述情况下,所需答案将是

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

但是当我这样做时set(mat),它给了我错误

TypeError:无法散列的类型:“列表”

你能解决我的问题吗?提前致谢!

四人

由于列表是可变的,因此不能进行哈希处理最好的选择是将它们转换为元组并形成一个集合,像这样

>>> mat = [[1,2,3],[4,5,6],[1,2,3],[7,8,9],[4,5,6]]
>>> set(tuple(row) for row in mat)
set([(4, 5, 6), (7, 8, 9), (1, 2, 3)])

我们一次遍历mat一个列表,将其转换为一个元组(它是不可变的,因此sets很酷)并将生成器发送到该set函数。

如果要将结果作为列表列表,则可以通过将set函数调用的结果转换为列表来将其扩展为列表,如下所示

>>> [list(item) for item in set(tuple(row) for row in mat)]
[[4, 5, 6], [7, 8, 9], [1, 2, 3]]

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

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

来自分类Dev

Python中列表列表的列表理解

来自分类Dev

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

来自分类Dev

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

来自分类Dev

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

来自分类Dev

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

来自分类Dev

Python:更改列表列表中的元素

来自分类Dev

遍历Python中的列表列表

来自分类Dev

在python中填充列表列表

来自分类Dev

在Python列表列表中识别峰高

来自分类Dev

使用Python在列表列表中的差异

来自分类Dev

从Python中的列表列表创建图

来自分类Dev

Python:列表列表中的组合(?)

来自分类Dev

反转python列表列表中的元素

来自分类Dev

在Python列表列表中求和

来自分类Dev

更新Python中的列表列表

来自分类Dev

Python Rich表中的列表列表

来自分类Dev

遍历Python中的列表列表

来自分类Dev

取消选择Python中的列表列表

来自分类Dev

从Python中的列表列表创建图

来自分类Dev

在python中重组列表列表

来自分类Dev

Python:在列表列表中查找对称

来自分类Dev

使用Python在列表列表中的游戏

来自分类Dev

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

来自分类Dev

如何将列表列表转换为python中的集合,以便可以与其他集合进行比较?

来自分类Dev

Python:如何在python的列表列表中添加列表?

来自分类Dev

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

来自分类Dev

Python从字典列表列表中创建列表

来自分类Dev

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