关于检查条件的机制的问题。 if ONE or TWO:
两个条件检查,如果ONE == True
?我在哪里可以读到这个?
答案 0 :(得分:2)
在python中,这称为短路。逻辑表达式从左到右进行评估(考虑括号),一旦明确逻辑答案将会立即停止执行。
在交互式控制台中尝试此代码:
>>> def one():
... print "one called"
... return True
>>> def two():
... print "two called"
... return True
>>> one() or two()
回复将是:
one called
True
同样的事情发生在and
上(如果第一个参数为False,则永远不会评估第二个参数)。
答案 1 :(得分:2)
这称为短路,Python确实支持它。您可以在the docs中阅读解释。
答案 2 :(得分:1)
是的,Python short-circuits布尔表达式的评估。