考虑以下示例:
>>> {1, True}
set([True])
>>
>>> {True, 1}
set([1])
为什么集合的表示方式不同,具体取决于元素的顺序?
答案 0 :(得分:4)
这是因为1
和True
彼此相同:
>>> True == 1
True
>>> 1 == True
True
该集合保留了每个相等类中的一个元素。
答案 1 :(得分:0)
bool是int类的子类
>>> issubclass(bool, int)
True
>>> True+1
2
>>> True == 1
True