Python中的“逻辑运算符”
-
且运算
and
只有两个布尔值都为 True 时,计算结果才为 True。表现形式 结果 True and True True True and False False False and True False False and False False -
或运算
or
只要有一个布尔值为 True,计算结果就是 True。表现形式 结果 True or True True True or False True False or True True False or False False -
非运算
not
把True变为False,或者把False变为True:表现形式 结果 not True False not False True -
联合运算的注意事项
例子:>>>a = 'python' >>>print 'hello,', a or 'world' >>>a = '' >>>print 'hello,', a or 'world' >>>a = 'python' >>>print 'hello,', a and 'world' >>>a = '' >>>print 'hello,', a and 'world'
输出:
原因分析:
- 在计算 a and b 时,如果 a 是 False,则根据与运算法则,整个结果必定为 False,因此返回 a;如果 a 是 True,则整个计算结果必定取决与 b,因此返回 b。
- 在计算 a or b 时,如果 a 是 True,则根据或运算法则,整个计算结果必定为 True,因此返回 a;如果 a 是 False,则整个计算结果必定取决于 b,因此返回 b。
- 所以Python解释器在做布尔运算时,只要能提前确定计算结果,它就不会往后算了,直接返回结果。