Python基础问题,boolean?

请问这个地方c1 | b1
c2 | b1的输出为什么是这样的,怎么判断结果数值的多少?

img

你好,| 是按位或运算,也就是说,把它们转化成二进制,每一位进行比较,之所以会报错,是因为第三个是浮点型,而位运算 只能 用于 整型。
在python中true的值为1,false为0
c1 | b1 就是3 |1,让他们转换成二进制进行或运算,3的二进制是11,1的二进制是01,二进制或运算每一位比较,只要有一个一就是一,所以他的二进制结果是11,对应十进制的3。
下面的同理,有帮助的话采纳一下哦!