1.首先须知:
在python中 and 和 or 执行布尔逻辑运算,但是他们并不返回布尔值,而是返回他们实际进行比较的值之一。
2.and用法
使用 and 时, 从左到右计算表达式的值。
0、''、[]、()、{}、None 在布尔环境中为假;其它任何东西都真。
如果布尔环境中的某个值为假,则 and 返回第一个假值。
所有值都为真,返回最后一个真值,返回最后一个真值。
3.or的用法
使用 or 时,计算从左往右,如果有一个值为真,or立刻返回该值,忽略后面所有的值。
4.举例如下:
>>> a = "first"
>>> b = "second"
>>> 1 and a or b (1)
'first'
这个语法看起来类似于 C 语言中的 语言中的 语言中的 bool ? a : b 表达式。 整个从左到 右计算, 所以先and 表达式 。
1 and 'first' 值为 'first', 然后 'first' or 'second' 的值为 'first'。