Python 中连续使用许多逻辑'AND'运算符



From IDLE:

>>> a=True
>>> b=True
>>> c=True
>>> d=True
>>> e=True
>>> f=a and b and c and d and e
>>> f
True
>>> b = False
>>> f
True

既然b是假的,那么第二个f不应该是假的吗?

"如果两个操作数都为真,那么条件就变为真。

https://www.tutorialspoint.com/python/logical_operators_example.htm

即使它一次比较两个名称,因为一个比较给出 False,所有其他比较都是 False...?

当最后打印f时,它仍然是您第一次将其分配给f时的值。在执行该评估后更改bf的价值没有任何影响。

在更改 b 的值后,您必须再次执行f=a and b and c and d and e才能对f产生任何影响:

>>> a=True
>>> b=True
>>> c=True
>>> d=True
>>> e=True
>>> f=a and b and c and d and e
>>> f
True
>>> b = False
>>> f
True
>>> f=a and b and c and d and e
>>> f
False

变量 f 设置为条件语句运行时的状态。 因此,由于定义 f 时条件的评估值为 True,因此 f 将继续为 true,直到重新分配为止。 它不会在每次调用 f 时重新处理条件。

相关内容

  • 没有找到相关文章

最新更新