首页 > 解决方案 > 如何遍历数据点相互依赖的列表?

问题描述

我有一个列表,a = [5, 4, 9, 3, 6, 6, 8, 2],我基本上想对前三个数字求和,这个和将是新列表中的第一个值。新列表中的下一个值将是 4、9 和 3...等的总和。等如何在 Python 中循环这个?

标签: pythonloops

解决方案


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)

输出

[18, 16, 18, 15, 20, 16]

推荐阅读