如何编写函数来获取索引a和b之间给定列表中项目的总和。例如,给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
答案 0 :(得分:4)
您可以使用列表切片实现此目的:
sum(your_list[a:b + 1])
此处,your_list[a:b+1]
是切片 - 您的列表的一部分,从索引a
开始,以索引{{1结尾},包括两个索引的值(这就是你需要b
的原因。)
答案 1 :(得分:1)
你可以简单地在python中使用索引切片和sum函数。
return sum(L[a:b])
答案 2 :(得分: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
此程序打印
结果是9