1.用for循环

one = 0
for i in range(1,101):
	one = one+i
print(one)

2.用sum()函数

two = sum(range(101))
print(two)

3.用while循环

three = 0
i = 1
while i < 101:
    three = three+i
    i+=1
print(three)

4.用reduce函数,reduce()的作用是接受一个函数和一个可迭代序列,在每次迭代中,当前元素和前一个元素的输出都传递给函数,函数最后返回一个值。
lambda函数接受两个参数,并返回两个元素的累加。

from functools import reduce
four = reduce(lambda a,b:a+b,range(1,101))
print(four)

我马上就有疑问了?
reduce只是不断相加相邻的两个元素,为什么到最后会返回一个数呢,事实上reduce的工作过程是这样的:迭代序列的过程中,首先把 前两个元素(只能两个)传给 函数,函数加工后,然后把 得到的结果和第三个元素 作为两个参数传给函数参数, 函数加工后得到的结果又和第四个元素 作为两个参数传给函数参数,依次类推

或者也可以这样理解:对前两个元素操作后返回一个值和剩下的元素继续组成列表,插入列表头部,然后再从列表中取出前两个元素,循环往复,直到列表为空,返回最后的值(当然实际情况应该不是这样的)
例如1-5的相加:((((1+2)+3)+4)+5)

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐