将集合列表转换为集合的集合(以找到唯一元素)

1 投票
1 回答
1162 浏览
提问于 2025-04-17 20:48

我想在Python中找到A =[set([1,2]),set([1,2]), set([1])]这个列表中的唯一元素。我试过用set(A),但没成功。有简单的方法可以做到吗?

1 个回答

4

把你的集合转换成frozenset()对象

set(frozenset(s) for s in A)

frozenset()是一种不可变的集合对象,最重要的是,它是可以被哈希的。因此,它可以存储在一个set()中。

示例:

>>> A = [set([1,2]),set([1,2]), set([1])]
>>> set(frozenset(s) for s in A)
set([frozenset([1, 2]), frozenset([1])])

撰写回答