python 做逻辑运算的时候,我有一些有趣的理解。
例如:
a = True
b = False
c = True
d = a or b and c
那么d = ?
在中学学习排列组合的时候,就有过这样的方法:分步骤用乘法,分类别用加法。
所以可以把逻辑预算中的and理解为乘法,or理解为加法。
因为 True的值为1,False的值为0,所以d = 1 + 0 * 1
所以d为True.
逻辑运算的短路
a = True or xxxxx
逻辑运算是没有负数的,所以1加上任何一个数一定是一个大于0的数,那么不管or后面是什么,这里的a一定是True。
同理,a = False and xxxxx 这里的a一定是False