[1, 1, 1, 2, 2, 3].count(True)
>>> 3
Run Code Online (Sandbox Code Playgroud)
如果所有值的返回值不等于,为什么返回3
而不是?6
bool(i)
True
i
0
In [33]: True == 1
Out[33]: True
In [34]: True == 2
Out[34]: False
In [35]: True == 3
Out[35]: False
Run Code Online (Sandbox Code Playgroud)
True
和False
是 的实例bool
,并且bool
是 的子类int
。
来自文档:
[布尔值] 代表真值 False 和 True。代表值 False 和 True 的两个对象是唯一的布尔对象。布尔类型是普通整数的子类型,在几乎所有上下文中,布尔值的行为分别类似于值 0 和 1,例外是当转换为字符串时,返回字符串“False”或“True”,分别。