Python3菜鸟教程中关于逻辑运算符的解释和描述如下:
运算符 | 逻辑表达式 | 描述 |
---|---|---|
not | x and y | 布尔"与" - 如果 x 为 False,x and y 返回 False,否则它返回 y 的计算值。 |
and | x or y | 布尔"或" - 如果 x 是 True,它返回 x 的值,否则它返回 y 的计算值。 |
or | not x | 布尔"非" - 如果 x 为 True,返回 False 。如果 x 为 False,它返回 True。 |
初看觉得很简单,而实际使用过程中遇到不少费解的地方,也挖了很多坑,在此做一点系统的总结。
首先,需要明确逻辑运算符的优先级:not > and >or。
其次,需要明确Python中对于布尔值的判定:Python中值为False的情况有0,"", [ ], { },False, ( )。也就是说,任何