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

Python中使用if-else循环处理嵌套列表 按规则求均值生成新列表

通用循环实现方案

核心逻辑

遍历原三层嵌套列表A的所有一级子项,通过判断每个一级子项下的二级元素数量走对应分支:

  • 若二级元素数量为2:提取两个三级位置的数值,计算平均值作为新列表对应位置的值
  • 若二级元素数量为1:直接提取唯一的三级位置数值,作为新列表对应位置的值
    最终输出保持和示例一致的三层嵌套结构,支持任意长度的同结构输入。

可直接运行的通用代码

# 此处A可替换为任意长度的同结构三层嵌套列表
A = [
    [[0.369577823]],
    [[0.987884443]],
    [[1.244425627], [1.058887146]],
    [[3.707809378]],
    [[0.476881021]],
    [[0.304499065], [1.037728999]],
    [[3.073758392], [5.032947535]]
]

Anew = [[]]
for item in A:
    if len(item) == 2:
        # 双值分支:计算平均值
        cal_res = (item[0][0] + item[1][0]) / 2
        Anew[0].append([cal_res])
    else:
        # 单值分支:直接取值
        cal_res = item[0][0]
        Anew[0].append([cal_res])

输出验证

运行代码后得到的Anew和期望结果完全一致:

[[[0.369577823],
  [0.987884443],
  [1.1516563865],
  [3.707809378],
  [0.476881021],
  [0.671114032],
  [4.0533529635]]]

适配说明

  • 不绑定原列表固定长度,一级子项增减无需修改代码逻辑
  • 通过长度判断替代固定索引取值,不会触发索引不存在的报错
  • 输出嵌套层级和硬编码示例完全对齐,可直接替换原有硬编码逻辑

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.28 07:21:26