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

Python如何按嵌套字典的内层指定值从大到小排序

嵌套字典按内层指定值降序排序实现方案

适用前提

Python 3.7及以上版本原生支持字典保留插入顺序,基础实现方案基于该版本特性编写,低版本兼容方案见文末。

示例原字典结构

origin_dict = {"Value1":{"OtherValue":0,"ValueINeed":50},"Value2":{"OtherValue":1,"ValueINeed":100}}

核心实现代码

# 按内层ValueINeed字段从大到小排序
sorted_dict = dict(sorted(origin_dict.items(), key=lambda item: item[1]["ValueINeed"], reverse=True))

参数说明

  • origin_dict.items():获取原字典所有键值对元组,结构为(外层键, 内层字典)
  • key=lambda item: item[1]["ValueINeed"]:指定排序的取值规则,取内层字典中ValueINeed对应的值作为排序依据
  • reverse=True:开启降序排序,若需要从小到大排序可删除该参数或设为False
  • 外层dict():将排序完成的元组列表转换为保序字典

验证输出

print(sorted_dict)
# 输出结果:{'Value2': {'OtherValue': 1, 'ValueINeed': 100}, 'Value1': {'OtherValue': 0, 'ValueINeed': 50}}

Python 3.6及更低版本兼容方案

低版本Python默认字典不保留插入顺序,需要使用collections.OrderedDict存储排序结果:

from collections import OrderedDict
sorted_dict = OrderedDict(sorted(origin_dict.items(), key=lambda item: item[1]["ValueINeed"], reverse=True))

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 18:18:02