为了账号安全,请及时绑定邮箱和手机立即绑定

+ 1 在下面的 python 函数中真的很重要吗?

+ 1 在下面的 python 函数中真的很重要吗?

宝慕林4294392 2022-12-20 15:13:06
我是编程新手,正在参加 Python 在线课程。我有一个问题要问以下函数中的一行:def sum_first_n(n):    result = 0    for i in range(n):        result += i + 1    print(result)sum_first_n(100)结果是 5050。现在看第 4 行:result += i + 1,如果我从该行中删除 + 1,我仍然会得到相同的结果。谁能好心解释一下 +1 的功是什么,或者写的时候可以省略吗?
查看完整描述

3 回答

?
温温酱

TA贡献1752条经验 获得超4个赞

它肯定会对您的输出产生影响。首先,当 i 为 0 时,生成的整数值为 1,对于循环的下一次迭代,将向结果添加 2,因此结果等于 3。而如果不存在增量 1 的值结果将是 2 等等。所以肯定会有影响的!



查看完整回答
反对 回复 2022-12-20
?
鸿蒙传说

TA贡献1865条经验 获得超7个赞

我从该行中删除了 +1,它打印了 4950。+1很重要。让我解释。
首先,result = 0这里无事可做。
for i in range(n)表示重复 n 次,从 STARTING 到i=0结束n=99
对于每个循环,result = result + i + 1。由于您的循环仅求和 100 次,因此它在 处停止i=99,但是有100 次,+1因此结果为 5050。
为了使这段代码更具可读性,将其更改为for i in range(n+1): result += i表示循环从 0 开始到 100 结束,这是前 100 的总和正整数。

查看完整回答
反对 回复 2022-12-20
?
杨魅力

TA贡献1811条经验 获得超6个赞

'result += i + 1' 与 'result = result + i + 1' 相同。
'result = result + i + 1' 导致 5050,'result = result + i' 导致 4050。
也许您缺少任何环境选项。

查看完整回答
反对 回复 2022-12-20
  • 3 回答
  • 0 关注
  • 173 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号