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

Python中如何根据字典元素的数值对字典元素进行排序

Python字典按值排序实现方案

注意:Python 3.7及以上版本的内置dict默认保留键值对插入顺序,低于该版本请使用collections.OrderedDict存储排序结果,否则排序后的顺序不会被保留

核心实现基于Python内置的sorted()函数,指定排序维度为字典的值、排序规则为降序即可,对应示例代码如下:

ex_dict = {"text1" : 63 , "text2" : 71 , "text3" : 3}

# 排序生成目标有序字典
sorted_dict = dict(
    sorted(
        ex_dict.items(),
        key=lambda kv: kv[1],  # 按每个键值对的值作为排序依据
        reverse=True  # 降序排列,若需要升序删除该参数即可
    )
)

执行后sorted_dict的输出和预期完全一致:

{"text2" : 71 , "text1" : 63 , "text3" : 3}

参数说明

  • ex_dict.items():返回字典所有(键, 值)组成的可迭代元组集合,是排序操作的遍历对象
  • key=lambda kv: kv[1]:传入sorted的排序规则函数,指定取元组的第二位(也就是字典的值)作为排序对比的依据
  • reverse=True:控制排序方向,设为True时为从大到小降序,默认值为False即从小到大升序

低版本Python兼容写法

如果使用Python3.7以前的版本,内置字典不保证插入顺序,需要导入OrderedDict存储结果:

from collections import OrderedDict

ex_dict = {"text1" : 63 , "text2" : 71 , "text3" : 3}
sorted_dict = OrderedDict(sorted(ex_dict.items(), key=lambda kv: kv[1], reverse=True))

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.29 16:30:53