news 2026/5/2 21:41:28

python:使用sorted()对列表中的字典进行排序

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
python:使用sorted()对列表中的字典进行排序
# 假设有一个包含多个字典的列表,每个字典代表一个人的信息 people = [ {'name': 'Alice', 'age': 30}, {'name': 'Bob', 'age': 25}, {'name': 'Charlie', 'age': 35} ] # 按 age 字段升序排序 sorted_people = sorted(people, key=lambda x: x['age']) print(sorted_people)

运行结果如下:

以上结果默认是按照升序进行排列的


如果需要按age从大到小排序,只需给sorted()添加reverse=True参数:

people = [ {'name': 'Alice', 'age': 30}, {'name': 'Bob', 'age': 25}, {'name': 'Charlie', 'age': 35} ] # 按 age 字段降序排序 sorted_people_desc = sorted(people, key=lambda x: x['age'], reverse=True) print(sorted_people_desc)

运行结果如下:


如果不需要保留原始列表,想要直接修改原列表,可以使用列表的sort()方法(该方法无返回值,直接修改原列表):

people = [ {'name': 'Alice', 'age': 30}, {'name': 'Bob', 'age': 25}, {'name': 'Charlie', 'age': 35} ] # 直接修改原始列表,按 age 升序排序 people.sort(key=lambda x: x['age']) print(people) # 此时原列表已被排序

运行结果如下:


如果列表中可能存在缺少age键的字典,可使用x.get('age', 默认值)避免KeyError,例如:

people = [ {'name': 'Alice', 'age': 30}, {'name': 'Bob'}, # 缺少 age 键 {'name': 'Charlie', 'age': 35} ] # 用 get() 给缺少 age 的元素设置默认值 0 sorted_people = sorted(people, key=lambda x: x.get('age', 0)) print(sorted_people)

运行结果如下:

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/1 2:29:35

基于双虚拟领航员+人工势场APF+数据驱动神经网络控制的4艘欠驱动水面船舶USV 包容控制+障碍规避+事件触发” 一体化仿真系统,解决强扰动+单障碍场景下的分布式协同控制问题附Matlab代码

✅作者简介:热爱科研的Matlab仿真开发者,擅长数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。 🍎 往期回顾关注个人主页:Matlab科研工作室 🍊个人信条:格物致知,完整Matlab代码获取及仿…

作者头像 李华
网站建设 2026/5/1 8:47:04

芒格的“反向思考“在市场分析中的应用:避免从众误区

芒格的"反向思考"在市场分析中的应用:避免从众误区关键词:芒格、反向思考、市场分析、从众误区、投资决策摘要:本文深入探讨了芒格的反向思考方法在市场分析中的应用。首先介绍了背景信息,包括目的范围、预期读者等内容…

作者头像 李华
网站建设 2026/5/1 10:28:50

PyTorch-CUDA环境 vs 传统Anaconda:谁更适合深度学习?

PyTorch-CUDA环境 vs 传统Anaconda:谁更适合深度学习? 在现代深度学习项目中,一个稳定、高效的开发环境往往决定了从实验到部署的成败。许多开发者都曾经历过这样的场景:代码写好了,模型结构也没问题,结果…

作者头像 李华
网站建设 2026/4/24 17:21:19

华为云国际站代理商如何使用EDCM进行跨账号代维?

华为云国际站代理商使用 EDCM 进行跨账号代维,核心是 “伙伴中心 EDCMIAM 委托” 三端联动,流程分 “前置授权准备→EDCM 接入与授权→跨账号切换与运维→权限 / 日志管理” 四步,全程可视化、可批量操作,单客户约 15 分钟完成&a…

作者头像 李华
网站建设 2026/4/30 20:25:52

GitHub热门项目都在用的PyTorch环境,现在一键就能部署

GitHub热门项目都在用的PyTorch环境,现在一键就能部署 在AI研发一线摸爬滚打过的人都知道,最让人头疼的往往不是模型调参、也不是数据清洗,而是——环境配不起来。 明明代码是从GitHub上拉下来的开源项目,文档写得清清楚楚“依赖&…

作者头像 李华