python 3 any/all逻辑运算(多个元素与或)用法
1、首先,我们可以用and运算拼接多个逻辑表达式。如图所示。当变量x本身作为逻辑表达式时,如果是数值,非零则为真。

3、all、any函数在处理非数值类型时,和逻辑表达式的处理相同。空列表、字典为False,飞空为True。None为False。

5、有可能列表元素在估值过程中,都是逻辑True,但是被哜绠庀钟估值后,出现逻辑上为False的项,如下所示。由于传入any/all函数的是估值后的列表,所以结果如下。

6、当传入的不是列表/元组,而是生成器时(生成器也是iterable),情况会复杂一些。将如图所示的生成器传如any/all,可以发现any/all是取一项估值一项。如果逻辑值已经确定,直接短路返回。

7、同样的,使用and 和 or效果仍然类似,可见python中的and和or也是短路计算的。
