我有一个数字,例如35。是否有一个函数可以
35+34+33.....+1 = 630
我知道有累加,但更多用于数组而不是实数。
答案 0 :(得分:6)
借助数学的力量,您可以高效地进行计算:
result = 35 * (35 + 1) // 2 # 630
答案 1 :(得分:4)
还没有一个内置函数可以完全做到这一点,但是您可以将sum
函数与范围对象结合使用。
result = sum(range(35, 0, -1))
该表达式中的-1
使范围倒计数,因此sum
以35
开头,一直持续到到达0
然后停止(不包括{总和为{1}},尽管在这里无关紧要)。当然,加法运算符是关联和可交换的,因此顺序在理论上无关紧要。但这会按照您的要求执行您的要求。当然,还有其他方法可以获得相同的结果。
在一条评论中,您似乎说要使用变量0
而不是常量maxlen
。然后只需使用
35