You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Python中实现列表相邻元素平均值的计算循环?

实现你需要的Python列表平均计算逻辑

Hey,我看了你的需求,这里有个小细节得先澄清下:你伪代码里写的「循环i从1到2」会导致索引越界问题(因为listOfNumbers只有3个元素,索引最大是2,i=2时listOfNumbers[i+1]就超出范围了),而且这样也得不到你想要的[1.5, 2.5, 0]结果。不过没关系,我给你整理了最合理的实现方案:

匹配目标结果的正确代码

这是能直接得到你想要结果的实现:

# 初始化指定的两个列表
listOfNumbers = [1, 2, 3]
averagesOfNumbers = [0, 0, 0]

# 循环i取0和1,对应计算前两个位置的平均值
for i in range(2):
    averagesOfNumbers[i] = (listOfNumbers[i] + listOfNumbers[i + 1]) / 2

# 验证输出结果
print(averagesOfNumbers)  # 输出:[1.5, 2.5, 0]

代码细节拆解

  • 先按要求初始化两个列表,averagesOfNumbers初始值全设为0;
  • range(2)会生成0和1两个循环变量,正好对应我们需要赋值的前两个位置:
    • 当i=0时,计算(1+2)/2=1.5,赋值给averagesOfNumbers[0];
    • 当i=1时,计算(2+3)/2=2.5,赋值给averagesOfNumbers[1];
  • 第三个位置averagesOfNumbers[2]保持初始的0,完美匹配你要的最终结果。

关于伪代码循环范围的说明

如果严格按你写的「循环i从1到2」执行,会触发IndexError(因为listOfNumbers没有索引3的元素),而且得到的结果也和预期不符,所以不推荐这种写法。

内容的提问来源于stack exchange,提问作者DenverDataThug

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.12 04:21:04