布尔逻辑+而布尔和对象:

时间:2012-12-05 17:38:03

标签: python while-loop

a = True
obj = {some object}

while a and obj:
    doSomething()
    certain if statements:
    ^ some of these will turn a False or obj to None

^当a = True且obj存在时,它会继续运行吗?

如果两者同时为假,会怎么样 - 将为False和None - >评估为True,以便它继续运行或在循环时退出

2 个答案:

答案 0 :(得分:3)

  

如果两者同时为假,会怎么样 - 将为False和None - >评估为True,以便它继续运行或在循环时退出

只要至少 and个操作数之一评估为False,循环就会停止。因此,如果两者评估为False,则循环也会停止。

请务必注意,FalseNone并不是评估为False的唯一内容。有关详细信息,请参阅documentation

答案 1 :(得分:1)

是的,它会在' a'保持正确并且obj存在

如果两者都为False,则评估为False

如果只有一个变为False,它将评估为False

尝试写作:

  

(假和无)

在你的python解释器中它将评估为False