Python实现累计求和的三种方法及进阶应用

Noah
Noah
发布时间:2026-10-14| 4人浏览过
原创

本文详细介绍在Python中实现0到n累计求和的三种核心方法:while循环、for循环以及递归函数。通过定义sum1、sum2和sum3函数,演示了不同逻辑下的代码实现与调用方式,并对比了n=100时的运行结果。此外,文章还补充了一个将数字m重复拼接求和(如m+mm+mmm)的进阶案例,帮助读者深入理解循环变量控制、递归出口设置及列表操作技巧。

Python实现累计求和的三种核心方法

一、使用三种方法实现0-n累加求和

我们将分别定义函数,利用while循环、for循环以及递归调用来计算从0累加至n的和。

1、使用while循环

定义一个名为sum1(n)的函数,其核心逻辑如下:

2、使用 for循环

定义一个名为sum2(n)的函数,其核心逻辑如下:

3、使用递归函数

定义一个名为sum3(n)的函数,其核心逻辑如下:

函数调用与结果验证

二、上述三种方法分别对应三个独立的累加求和函数。

1、以0到100的累加为例,设定n=100,依次调用上述三个函数进行计算。

具体调用代码如下:

2、 控制台输出的结果均为:5050

关键注意事项与递归原理

3、这里需要注意以下关键点:

1、在while循环中,必须正确初始化累加变量和计数器,以避免陷入死循环;

2、for循环的主要作用是遍历指定范围内的数值;

3、递归函数必须设置明确的递归出口(Base Case),即当满足特定条件时停止递归并返回结果,防止无限递归导致栈溢出。例如,当n=1时,函数应返回1,且不再执行return之后的代码。调用函数时,需使用变量接收返回值,才能在控制台打印出最终结果。

进阶案例:数字拼接求和

补充知识:在Python中,若需计算 Sum = m + mm + mmm + ... + mmm...m(共n项),其中m为单个数字,n为项数。输入两个整数m和n,列出算式并计算结果:

具体实现逻辑见下方代码:


#为了打印出算式,并计算出结果,将m,mm这些放入到列表中
#定义列表中的m初始值为0,用Ele来代表m,mm....
Ele = 0
#定义总和为0
Sum = 0
#定义一个空列表
List = []
#输入两个值
n = int(input("input a digit:"))
m = int(input("input a digit:"))
#用循环的方式计算每个Ele(m,mm,mmm...)的值
#同时计算出总和
for i in range(n):
  Ele = Ele + m   #前两行循环计算出每个Ele的值
  m = m * 10     
  Sum = Sum + Ele  #循环计算出总和
  Str = str(Ele)   #将Ele转化为字符串型,方便将列表整个转化成一个长字符串也就是计算公式
  List.append(Str)  #循环往列表添加一个Ele在列表的最后位置
  List.append("+") #循环往列表添加一个"+"在列表的最后位置,完成上面循环之后,列表中就出现了["m","+","mm","+","mmm","+"。....,"+"]
List.pop()      #去掉列表中的最后一个加号,算式的最后面是没有加号的
print("".join(List) + "=",end="")  #列表通过("".join)函数转化为字符串并去掉中间的逗号变成m+mm+mmm+...mmm....,再拼接上“=”号,设置打印不换行
print(Sum)      #将计算结果拼接在公式的末尾,一个算式完美的出现了

以上关于Python定义函数实现累计求和及进阶应用的分享到此结束,希望能为读者提供参考与帮助。

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。