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

我是编程新手,正在参加 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 的功是什么,或者写的时候可以省略吗?


宝慕林4294392
浏览 174回答 3
3回答

温温酱

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

鸿蒙传说

我从该行中删除了 +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 的总和正整数。

杨魅力

'result += i + 1' 与 'result = result + i + 1' 相同。'result = result + i + 1' 导致 5050,'result = result + i' 导致 4050。也许您缺少任何环境选项。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python