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

如何基于嵌套字典的最后y值对Python字典列表进行降序排序

实现方案

直接使用Python内置的sorted()函数,通过key参数指定排序规则,设置reverse=True实现降序即可。

完整示例代码

# 原始数据
raw_list = [
     {
      "instrument": "AUD",
      "changes": [
                  {"x": 1632765600000, "y": 0},
                  {"x": 1632769200000, "y": 1},
                  {"x": 1632772800000, "y": 2},
                  {"x": 1632776400000, "y": 3},
      ]
     },
     {
      "instrument": "USD",
      "changes": [
                  {"x": 1632765600000, "y": 0},
                  {"x": 1632769200000, "y": 2},
                  {"x": 1632772800000, "y": 3},
                  {"x": 1632776400000, "y": 4},
      ]
     },
]

# 排序逻辑:按每个字典changes数组最后一个元素的y值降序排列
sorted_list = sorted(raw_list, key=lambda item: item["changes"][-1]["y"], reverse=True)

# 打印验证结果
print(sorted_list)

代码说明

  • key=lambda item: item["changes"][-1]["y"]:指定排序的计算规则,对列表中的每一个字典元素,先取changes属性的最后一个元素(用索引-1),再取该元素的y值作为排序比较的键
  • reverse=True:设置为降序排列,y值越大的元素越靠前
    运行上述代码后得到的sorted_list就是要求的排序后结果。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 01:27:03