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

Python嵌套列表按索引提取元素到多个列表结果不符求助

问题原因

你的代码存在两层多余的嵌套循环,导致重复执行append操作:

  • 第一层循环遍历inputs的每个子列表,示例中会循环2次
  • 第二层循环额外遍历了每个子列表的所有元素,示例中每个子列表有3个元素,因此总共会执行2*3=6次append操作,最终每个row列表的长度为6,和你得到的错误输出一致
  • 同时你直接把子列表的元素值当作索引使用,还会出现下标为负、索引越界等潜在逻辑错误
修正方案

方法1:修改循环逻辑(最易理解)

直接遍历每个子列表,按需提取对应位置的元素即可:

row_1 = []
row_2 = []
row_3 = []
for sub_list in inputs:
    row_1.append(sub_list[0])
    row_2.append(sub_list[1])
    row_3.append(sub_list[2])
print(row_1, row_2, row_3)

方法2:用zip函数更简洁实现

Python内置的zip函数可以直接对嵌套列表按列解包,一行就能完成需求:

row_1, row_2, row_3 = map(list, zip(*inputs))
print(row_1, row_2, row_3)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 19:06:08