Python 如何打印一系列值的总和?
对于这个函数,当我尝试测试它时,我没有得到期望的结果。谁能帮我修一下吗 预期结果:Python 如何打印一系列值的总和?,python,Python,对于这个函数,当我尝试测试它时,我没有得到期望的结果。谁能帮我修一下吗 预期结果: >>>sumInc(3, 10, 3)-> 18 我的结果是: >>>sumInc(3, 10, 3) -> 135 我的代码: def sumIncm,n,D: 总数=0 对于0范围内的i,n-1: 总计=总计+m+i*D 返回总数 我觉得你把事情弄得比需要的复杂多了。如果函数的参数与范围start、stop、step的参数相同,则只需将它们传递到要迭代的范围
>>>sumInc(3, 10, 3)-> 18
我的结果是:
>>>sumInc(3, 10, 3) -> 135
我的代码:
def sumIncm,n,D:
总数=0
对于0范围内的i,n-1:
总计=总计+m+i*D
返回总数
我觉得你把事情弄得比需要的复杂多了。如果函数的参数与范围start、stop、step的参数相同,则只需将它们传递到要迭代的范围:
def sumInc(m, n, D):
total = 0
for i in range(m, n, D):
total = total + i
return total
当然,你不需要自己写来求和,你可以直接在range对象上调用sum。整个函数体可以是:return sumrangem,n,D你的sumInc函数的每个参数是什么意思?它应该像m+m+D+m+m+2D一直到Y,其中Y小于n。这就是这个系列应该是什么样的。必须一步一步地检查你的循环。将你试图用Python编写的系列粘贴到你的问题中。你是什么意思?我做错了什么?我检查了m,n,D中的每个值?你能解释一下这背后的逻辑吗?你显示的预期结果与你从3,6,9中得到的结果相匹配。这就是你从3,10,3区得到的。如果您不理解范围的参数,我建议您阅读。