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

如何用字典推导式或单行代码获取嵌套字典各键的最大值

提取嵌套字典中各键的最大值(无额外库的单行方案)

给定嵌套字典:

{'adcellh': {'e': 1, 'l': 2, 'h': 1},
 'llfechh': {'l': 2, 'e': 1, 'h': 2},
 'hkleeemvt': {'h': 1, 'l': 1, 'e': 3}}

目标是生成各键对应最大值的字典:

{'e': 3, 'l': 2, 'h': 2}

你已经通过循环实现了需求:

s = {}
for i in d.values():
    for j in i:
        if j in s and s[j] > i[j]:
            continue
        else:
            s[j] = i[j]

无额外库的单行字典推导式方案

利用所有子字典键相同的前提,可以直接通过字典推导式完成:

result = {k: max(sub[k] for sub in d.values()) for k in next(iter(d.values()))}

说明:

  • next(iter(d.values())) 获取第一个子字典的所有键,因为所有子字典键一致,所以能覆盖全部目标键
  • 对每个键 k,遍历所有子字典,用 max() 取出该键对应的最大值
  • 最终通过推导式直接生成目标字典

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.23 04:07:36