python求和1到100_python求1到100的和的几种方法

我自己写的,while循环

i = a = 0

while i < 100:

i = i + 1;

a = a + i;

print(a)

网上方法一,for循环

a = 0

for i in range(0,100):

a += (i+1);

print(a)

网上方法二,sum函数

print(sum(range(1,101)))

网上方法三,sum函数加列表生成式

print(sum([x for x in range(1,101)]))

网上方法四,使用reduce函数

注意:在 Python3 中,reduce() 函数已经被从全局名字空间里移除了,它现在被放置在 functools 模块里,

如果想要使用它,则需要通过引入 functools 模块来调用 reduce() 函数。

from functools import reduce

print(reduce(lambda a,b:a+b ,range(1,101)))

上面匿名函数也可以写具体函数:

def add(x,y):

return x + y

print(reduce(add,range(1,101)))

网上方法五,递归算法

def sumFun(max):

if max <=100 and max >= 0:

return max+ sumFun(int(max) - 1)

else:

return 0

print(sumFun(100))