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

Python 3d list操作:提取子列表首元素保留嵌套结构方法

问题说明

现有三维列表:

aa = [[[2, 3, 4, 5],[ 6, 7, 8, 9]], [[11, 12, 14, 15]]]

该列表由2个二维子列表组成,需求是提取每个最内层子列表的首个元素,同时保留原有的嵌套层级,目标输出为[[2, 6], [11]]。
原有代码的问题:两层循环直接将所有提取到的首元素追加到同一个一维列表中,最终得到扁平化输出[2,6,11],丢失了外层的分组嵌套结构。

实现方案

核心修正思路:按照原列表的外层分组处理,每遍历一个二维子列表,先创建独立的临时子列表存储当前分组提取到的首元素,整组处理完成后再将临时子列表追加到最终结果中,即可保留原有嵌套层级。

  • 基础循环写法
b = []
for two_d_row in aa:
    current_group = []
    for inner_list in two_d_row:
        current_group.append(inner_list[0])
    b.append(current_group)

运行上述代码即可得到目标结果[[2, 6], [11]]。

  • 简洁列表推导式写法
    逻辑和上述循环完全一致,写法更精简:
b = [[inner[0] for inner in two_d_row] for two_d_row in aa]

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.27 04:45:37