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

Python对列表每5个元素求平均值存入新列表报错如何解决?

代码修正方案

原代码存在的问题

  • 遍历语法错误:for q,r in i,j 无法同步遍历两个数组的对应元素,需要用zip()函数打包两个数组后再遍历
  • 列表追加逻辑颠倒:你需要将计算得到的平均值存入空列表a,正确写法为a.append(cov),原代码写反了调用对象
  • 分组范围硬编码:固定写死0-125的取值范围只适用于长度为125的列表,建议适配原列表l的实际长度调整
  • 缺少依赖导入:代码用到了numpy的相关方法,开头需要先导入numpy库

修正后的numpy实现版本

import numpy as np

# 替换为你自己的原数值列表
l = [1,2,3,4,5,6,7,8,9,10,11]
a = []
list_len = len(l)
# 自动适配列表长度生成分组索引
i = np.arange(0, list_len, 5)
j = np.arange(5, list_len + 5, 5)

for q, r in zip(i, j):
    avg = np.sum(l[q:r]) / 5
    a.append(avg)
print(a)

纯Python实现版本(无需依赖numpy)

如果场景不需要使用numpy,用原生Python语法也可以实现需求,写法更简洁:

# 替换为你自己的原数值列表
l = [1,2,3,4,5,6,7,8,9,10,11]
a = []
# 若要求必须每组满5个才计算,将结束参数改为 len(l) // 5 * 5 即可自动舍弃不足5个的尾部元素
for idx in range(0, len(l), 5):
    group = l[idx: idx+5]
    # 不足5个的分组按实际元素数量求平均
    avg = sum(group) / len(group)
    a.append(avg)
print(a)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 22:45:01