Python。如果`ONE == True`,是不是会检查两个条件? [复制]
Posted
技术标签:
【中文标题】Python。如果`ONE == True`,是不是会检查两个条件? [复制]【英文标题】:Python. Will TWO condition checked, If `ONE == True`? [duplicate]Python。如果`ONE == True`,是否会检查两个条件? [复制] 【发布时间】:2014-12-29 21:28:08 【问题描述】:关于检查条件机制的问题。 if ONE or TWO:
如果ONE == True
,是否会检查两个条件?我在哪里可以阅读到这方面的信息?
【问题讨论】:
你有没有想过他不知道short-circuiting这个词的意思? 【参考方案1】:在 python 中,这称为 短路。逻辑表达式从左到右计算(考虑括号),一旦明确逻辑答案是什么,执行就会停止。
在交互式控制台中试试这个代码:
>>> def one():
... print "one called"
... return True
>>> def two():
... print "two called"
... return True
>>> one() or two()
响应将是:
one called
True
and
也会发生同样的情况(如果第一个参数为 False,则永远不会计算第二个参数)。
【讨论】:
【参考方案2】:这称为短路,Python 确实支持它。你可以阅读the docs的解释。
【讨论】:
【参考方案3】:是的,Python short-circuits 布尔表达式的求值。
【讨论】:
以上是关于Python。如果`ONE == True`,是不是会检查两个条件? [复制]的主要内容,如果未能解决你的问题,请参考以下文章