如果我有以下列表:
x = [0, 1, 2, 1, 3, 4, 0, 1, 0, 1, 0, 1, 1]
我有一个数字m = 4.从每个元素我必须连续添加下一个元素,直到我达到一个大于或等于4的总和。然后,我必须输出包含多少的列表我必须添加的数字,包括起始的。所以这个例子的输出是:
y = [4, 3, 3, 2, 2, 1, 7, 6, 0, 0, 0, 0, 0]
第一个元素4意味着从x [0]开始,总和需要3个元素,因此y [0] = 4.结束零表示没有可能得到总和的方法4。
答案 0 :(得分:3)
要添加列表的连续元素,我建议采用两个步骤:
你得到一个包含开始和结束元素的列表 - 记住切片中没有包含end元素,所以你需要在你想要的最后一个项目的位置加1。
一般情况下,如果您希望元素开始到最后,则可以使用
获取该片段b.operator=
要获得该切片的总和,只需将其输入函数:
y_slice = y[start:(last+1) ] # The parentheses aren't needed
或
slice_sum = sum(y_slice)
现在,您需要弄清楚如何运行开始和最后的有用值。玩得开心。