>>> True + 2
3
>>> False + 2
2
我可以理解,不知何故,True表示1,False表示0。所以 这是否意味着,布尔和整数运算总是给出一个整数?
答案 0 :(得分:3)
在python中bool
是int
的子类,因此满足"is-a"关系,意思是 bool是-n int 。
演示:
issubclass(bool, int)
=> True
isinstance(True, int)
=> True
实际上,这意味着在任何对int有效的操作中,int都可以用bool替换。