python运行结果
0 or 1 and not 2False
0 or 0
0
什么时候结果用False,什么时候用0 0 or 1 and not 2
应该是 not 非零即True,零即False
and:左边的表达式的值为False时(即一个为零的值),and逻辑运算表达式的值就是它左边的表达式的值,因为与运算一假则假,否则and表达式就是右边表达式的值
or: 左边的表达式的值为True时(即一个非零的值),or逻辑运算表达式的值就是它左边的表达式的值,因为或运算一真则真,否则or表达式就是右边表达式的值
这是and 和 or 的短路机制
and 和 or 运算的结果是看它两边的表达式的值的
not得到的是一个布尔值,因为为True和为False的表达式并不唯一,所以就取与它运算的表达式相反的布尔值,因为布尔值是唯一的 其实 0 就代表 False!!!! 楼主的意思应该是问为什么结果有时候是 False/True 有时候是 0/1
*结果 当是短路路逻辑时呀 python中,由于bool是继承自int的子类,bool 和 int 混合计算的时候结果都会转成 int 类型
也就是说,如果想要的结果是int 类型的时候,True/False随便用,你想要的结果是 bool 类型时,别用 0 1
页:
[1]