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

时间:2014-11-03 16:24:45   收藏:0   阅读:189

根据题意,我们不能用到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)



评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!