Python and or 短路现象解释
-
前提引入
在不使用if for while 乘除法的前提下,计算
实现思路:递归 + 短路
python中and的作用是连接两个Boolean表达式 ,只有当两个表达式都为True时,返回True,否则返回False
短路现象: A and B = True , 如果A=False 时显然 A and B = False ,但短路现象也会发生,此时python编译器将跳过 的检测,直接判定整个式子为
-
所以可以利用Python的短路完成上述任务,完整代码如下
def sumNums(n): return n and (n+sumNums(n-1))
PS:
True and 15 = 15; False and 15 = 0;