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

嵌套列表遍历三元组赋值:如何实现循环处理直至全部完成?

问题解决

你的代码只处理第一组元素的核心原因是硬编码了索引0,每次都固定取row_column_values[0]的元素,而且嵌套的while True和内层for循环完全多余,属于无效重复操作。

正确实现方式

直接遍历嵌套列表中的每个子列表,将子列表的三个元素分别赋值给变量即可:

# 方式1:解包语法,更简洁直观
for row_str, column_str, value in row_column_values:
    row = int(row_str)
    column = int(column_str)
    memory[row][column] = value

如果习惯用索引访问(适合需要明确指定位置的场景):

# 方式2:通过索引取值
for item in row_column_values:
    row = int(item[0])
    column = int(item[1])
    value = item[2]
    memory[row][column] = value

原代码问题拆解

  1. 固定索引限制了处理范围:row_column_values[0][0]始终指向第一个子列表的元素,不管外层循环遍历到哪个子列表,都不会处理后续分组。
  2. 冗余循环无实际作用:内层for line in range(len(list))会对当前子列表的3个元素各循环一次,但每次都执行相同的赋值操作,相当于重复给同一个memory[row][column]赋值3次;外层的while True也只是让这个重复操作执行一次就break,完全没必要。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.24 14:39:25