我有一个列表,a = [5、4、9、3、6、6、8、2],我本质上是想对前三个数字求和,而这个和将是新列表中的第一个值。新列表中的下一个值将是4、9和3 ...的总和。等等。如何在Python中循环?
list slicing 是个好方法
您需要做的就是从开始索引到结束索引2进行遍历(可以进行最后3个元素的总和,当达到倒数第二个或最后一个元素时,您将不能使用3个元素)
在这里,您可以使用3个元素,并使用列表切片,将列表从当前索引切片到下一个3个索引,即a[i:i+3] 哪里[i,i+3)是范围。然后在该新列表上执行sum操作,然后将reuslt附加到最终列表。
a = [5, 4, 9, 3, 6, 6, 8, 2]
res=[]
for i in range(len(a)-2):
res.append(sum(a[i:i+3]))
print(res)
Run Code Online (Sandbox Code Playgroud)
输出
[18, 16, 18, 15, 20, 16]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
100 次 |
| 最近记录: |