首先,‘and’、‘or’和‘not’的优先级是not>and>or。
其次,逻辑操作符and 和or 也称作短路操作符(short-circuitlogic)或者惰性求值(lazy evaluation):它们的参数从左向右解析,一旦结果可以确定就停止。例如,如果A 和C 为真而B 为假, A and B and C 不会解析C 。作用于一个普通的非逻辑值时,短路操作符的返回值通常是最后一个变量。因此,逻辑运算符的理解也与C语言中不同。
当作用于逻辑值(True,False)时,情况如下
and :
表达式 a and 表达式 b:
表达式a 如果是真,那么就返回表达式b
表达式a如果是假,那么就返回表达式a
or:
表达式 a or 表达式 b:
表达式a 如果是真,那么就返回表达式a
表达式a如果是假,那么就返回表达式b