使 python 中的两个集合相等
equating two sets in python
假设我有两个列表
a = [2,3,4]
和 b=[2,3,4]
那为什么
>>> set(a) in set(b)
False
虽然
>>> set(a) == set(b)
True
该集合不包含 set(2, 3, 4)
,它包含整数、2
、3
和 4
。
您可以询问集合中是否存在单个整数:
>>> 2 in set(b)
True
>>> 3 in set(b)
True
>>> 4 in set(b)
True
documentation for set shows to check for containment you can do it two ways:
>>> set(a) <= set(b)
True
或
>>> set(a).issubset(set(b))
True
您正在测试 set(b)
是否包含文字集对象。 set(b)
不包含此类对象。
如果要测试 set(a)
是否为子集或相等,请使用 <=
:
>>> set(a) <= set(b)
True
>>> set(a).issubset(b)
True
任一选项也 returns True
对于较小的集合,其中所有元素也包含在 b
中:
>>> set([2, 3]) <= set(b)
True
>>> set([2, 3]).issubset(b)
True
>>> set([2, 3, 42]) <= set(b)
False
>>> set([2, 3, 42]).issubset(b)
False
可以使用比较运算符或 .issuperset
来测试一组是否包含另一组
>>> set([2, 3, 4]) >= set([2, 3])
True
>>> set([2, 3, 4]).issuperset(set([2, 3]))
True
假设我有两个列表
a = [2,3,4]
和 b=[2,3,4]
那为什么
>>> set(a) in set(b)
False
虽然
>>> set(a) == set(b)
True
该集合不包含 set(2, 3, 4)
,它包含整数、2
、3
和 4
。
您可以询问集合中是否存在单个整数:
>>> 2 in set(b)
True
>>> 3 in set(b)
True
>>> 4 in set(b)
True
documentation for set shows to check for containment you can do it two ways:
>>> set(a) <= set(b)
True
或
>>> set(a).issubset(set(b))
True
您正在测试 set(b)
是否包含文字集对象。 set(b)
不包含此类对象。
如果要测试 set(a)
是否为子集或相等,请使用 <=
:
>>> set(a) <= set(b)
True
>>> set(a).issubset(b)
True
任一选项也 returns True
对于较小的集合,其中所有元素也包含在 b
中:
>>> set([2, 3]) <= set(b)
True
>>> set([2, 3]).issubset(b)
True
>>> set([2, 3, 42]) <= set(b)
False
>>> set([2, 3, 42]).issubset(b)
False
可以使用比较运算符或 .issuperset
来测试一组是否包含另一组>>> set([2, 3, 4]) >= set([2, 3])
True
>>> set([2, 3, 4]).issuperset(set([2, 3]))
True