对给定列表 Python 的给定范围内的所有数字求和

新手上路,请多包涵

我如何编写一个函数来获取给定列表中索引 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

原文由 nightowl_nicky 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 692
2 个回答

似乎您想推出自己的解决方案。你可以这样做(基于你在问题中的代码):

 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

原文由 Christian Neverdal 发布,翻译遵循 CC BY-SA 3.0 许可协议

您可以通过列表切片来实现:

 sum(your_list[a:b + 1])

在这里, your_list[a:b+1] 是一个 切片- 列表 的一部分,从索引 a 开始,以索引 b 两个索引处的值结束,包括 这就是为什么你需要 b + 1 )。

原文由 ForceBru 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题