Python语言支持逻辑运算符,以下假设变量 a 为 10, b为 20:
运算符 | 逻辑表达式 | 描述 | 实例 |
---|---|---|---|
and | x and y | 布尔"与" - 如果 x 为 False,x and y 返回 False,否则它返回 y 的计算值。 | (a and b) 返回 20。 |
or | x or y | 布尔"或" - 如果 x 是非 0,它返回 x 的值,否则它返回 y 的计算值。 | (a or b) 返回 10。 |
not | not x | 布尔"非" - 如果 x 为 True,返回 False 。如果 x 为 False,它返回 True。 | not(a and b) 返回 False |
Python的逻辑运算符的优先级是:
and or not
优先级:() > not > and > or
如果出现混合运算:也就是先算括号内 再算not 再比较and两边 再比较or两边的值,
代码语言:javascript复制v1 = 1 or 3
v2 = 1 and 3
v3 = 0 and 2 and 1
v4 = 0 and 2 or 1
v5 = 0 and 2 or 1 or 4 or 7
v6 = 0 or False and 1
以上的结果是:
代码语言:javascript复制v1 = 1
v2 = 3
v3 = 0
v4 = 1
v5 = 1
v6 = False
除了0以外and都看后面的 or看前面的 和0对比的话就是相反