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

如何通过嵌套列表推导式构建包含所有键值对的嵌套字典

三层嵌套列表生成目标嵌套字典的正确推导式实现

原推导式错误原因

你编写的推导式存在的核心问题是:把两层循环都放在了外层字典的推导作用域下,同一个外层键k1会在遍历内层子列表sub的元素时被反复赋值,后面的子字典会直接覆盖前面的,因此最终每个外层键仅能保留最后一个子键值对,无法保留全部映射。

正确推导式写法

你需要将子字典的生成逻辑单独作为外层字典的value部分,使用嵌套的字典推导式实现,代码如下:

# 输入的三层嵌套列表
tg1 = [[[1, 2], [3, 4]], [[5,6]], [[7,8], [9,10], [10,10]]]
# 符合要求的嵌套字典推导式
D = {k1: {v[0]: v[1] for v in sub} for k1, sub in enumerate(tg1)}

结果验证

执行后得到的字典完全符合要求的映射关系:

  • D[0][1] = 2、D[0][3] = 4
  • D[1][5] = 6
  • D[2][7] = 8、D[2][9] = 10、D[2][10] = 10

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 20:15:05