首页 > 代码库 > 飘逸的python - 不使用关键字,求和1+2+…+n

飘逸的python - 不使用关键字,求和1+2+…+n

根据题意,我们不能用到if/else/for/while等关键字.


--------------思考中------------


思路:

1.用递归实现循环

2.递归的终止条件不用if怎么判断呢?  答案是字典,其中用not not n来把数字n转成bool.


上代码:

def sum_(n):
    return n + {
            True:lambda:sum_(n-1),
            False:lambda:0
        }[not not n]()

print sum_(100)



飘逸的python - 不使用关键字,求和1+2+…+n