Python表达式评估(“或”)

时间:2015-01-13 08:10:48

标签: python boolean expression evaluation

我想知道Python如何使用整数进行求值或表达式。对互联网的研究并未得出令人满意的答案。

问题1

5<5 or 10 

以上结果为10,我不明白为什么。

问题2

如何:

False or 10  返回10?

如何:

True or 10返回True?

问题3

如何:

5 or 10返回5?

修改

重新提问:

Why does Python return Boolean (True/False) when true and the Value (5 or 10) when false? I understand that it is a language, but is there a reason why it was mad so?

1 个答案:

答案 0 :(得分:2)

or返回第一个参数(如果为True),否则返回第二个参数。在Python中,0和像字符串和列表一样的空迭代是False,其他一切都是True。所以5<5 or 10的计算结果为False or 10,因为第一个参数为false,它返回第二个参数。在其他示例中,第一个参数为True,因此返回。