USE*_*3_T 2 python sum range indices
如何编写函数以获取给定列表中索引a和b之间的项目的总和。例如Give aList=[6,3,4,2,5]和a=1,b=3函数应该返回9。这是我的代码:
def sumRange(L,a,b):
sum= []
L = [6,3,4,2,5]
for i in range(a,b+1,1):
sum +=L[i]
return sum
Run Code Online (Sandbox Code Playgroud)
您可以通过列表切片来实现:
sum(your_list[a:b + 1])
Run Code Online (Sandbox Code Playgroud)
这your_list[a:b+1]是一个切片 - 列表的一部分,从索引开始,以索引a结束b,包括两个索引中的值(这就是为什么需要b + 1)。
看来您想推出自己的解决方案。您可以这样做(基于您问题中的代码):
def sumRange(L,a,b):
sum = 0
for i in range(a,b+1,1):
sum += L[i]
return sum
L = [6,3,4,2,5]
a = 1
b = 3
result = sumRange(L,a,b)
print "The result is", result
Run Code Online (Sandbox Code Playgroud)
该程序打印
结果是 9