【发布时间】:2019-08-09 00:22:03
【问题描述】:
这是一个非常琐碎的问题,我无法找到答案。
这就是问题所在。我有以下数组:
vals = [-5, 2]
我想检查val[0]或val[1]是否大于0。如果其中一个为真,那么我应该输出True。
我的直接想法是使用; (vals[1] or vals[0]) > 0) 但我发现(5 | -2) > 0 是假的,而(5 or -2) > 0 是真
任何澄清将不胜感激。
【问题讨论】:
-
|是位运算符,而不是逻辑or。 -
x or y == x用于任何非零x。 -
@chepner 确实!不要假设运算符优先,也不要假设解释器知道你的意思。
标签: python conditional