比较python中的两个集合

Sai*_*idu 0 python set

嗨伙计们,我对比较两套有疑问

    >>> x = {"a","b","1","2","3"}  
    >>> y = {"c","d","f","2","3","4"}  
    >>> z=x<y        
    >>> print(z)
    False
    >>> z=x>y
    >>> print(z)
    False
Run Code Online (Sandbox Code Playgroud)

在上面的逻辑中,对于两者z=x<y and z=x>y.我输出为False,而其中一个表达式应该返回True.谁能解释我为什么?

FHT*_*ell 8

<>运营商正在测试进行严格的子集.这些集合都不是另一个集合的子集.

{1, 2} < {1, 2, 3}  # True
{1, 2} < {1, 3}  # False
{1, 2} < {1, 2}  # False -- not a *strict* subset
{1, 2} <= {1, 2}  # True -- is a subset
Run Code Online (Sandbox Code Playgroud)


jai*_*ime 6

直接来自 python 文档——

此外,Set 和 ImmutableSet 都支持 set 与 set 比较。两个集合相等当且仅当每个集合的每个元素都包含在另一个集合中(每个都是另一个的子集)。一个集合小于另一个集合当且仅当第一个集合是第二个集合的一个真子集(是一个子集,但不相等)。一个集合大于另一个集合当且仅当第一个集合是第二个集合的真超集(是一个超集,但不相等)。