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

Python列表推导式拆解疑问:展开循环后结果与原推导式不符

问题分析与解决

你的问题核心是循环逻辑和原列表推导式的嵌套结构不匹配:原列表推导式是双层嵌套的二维结构,外层为每一行生成独立的子列表,内层把该行字符转成整数填充到子列表中;而你的循环直接将所有整数元素追加到同一个主列表,最终只能得到一维结果。

正确的循环拆解代码

raw_data = """
30373
25512
65332
33549
35390
"""
t = []
for row in raw_data.split():
    # 为当前行创建一个空的子列表
    row_list = []
    for x in row:
        row_list.append(int(x))
    # 将填充好的子列表加入主列表
    t.append(row_list)
print(t)  # 输出:[[3, 0, 3, 7, 3], [2, 5, 5, 1, 2], [6, 5, 3, 3, 2], [3, 3, 5, 4, 9], [3, 5, 3, 9, 0]]

逻辑对应说明

  • 原列表推导式中,[int(x) for x in row] 对应循环里构建单一行的子列表的过程
  • 外层的 for row in raw_data.split() 对应循环里遍历每一行,将构建好的子列表加入主列表的操作

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.09 13:05:18