python字典排序sorted

 2025-09-02  阅读 2  评论 0

摘要:1. 按键排序
返回排序后的键列表:
python
d = {'a': 3, 'b': 1, 'c': 2}
sorted_keys = sorted(d)
结果:['a', 'b', 'c

1. 按键排序

  • 返回排序后的键列表
  • python

    python字典排序sorted

    d = {'a': 3, 'b': 1, 'c': 2}

    sorted_keys = sorted(d)

    结果:['a', 'b', 'c']

  • 返回键值对的元组列表
  • python

    sorted_items_by_key = sorted(d.items)

    结果:[('a', 3), ('b', 1), ('c', 2)]

    2. 按值排序

  • 返回键列表(按对应值排序)
  • python

    sorted_keys_by_value = sorted(d, key=lambda k: d[k])

    结果:['b', 'c', 'a']

  • 返回键值对的元组列表(按值排序)
  • python

    sorted_items_by_value = sorted(d.items, key=lambda item: item[1])

    结果:[('b', 1), ('c', 2), ('a', 3)]

    3. 转换为有序字典

  • Python 3.7+ 使用普通字典
  • python

    ordered_dict = dict(sorted(d.items, key=lambda x: x[1]))

    字典按插入顺序保留排序结果

  • 兼容旧版本使用 `OrderedDict`
  • python

    from collections import OrderedDict

    ordered_dict = OrderedDict(sorted(d.items, key=lambda x: x[1]))

    4. 高级排序

  • 降序排序
  • python

    sorted_desc = sorted(d.items, key=lambda x: x[1], reverse=True)

    结果:[('a', 3), ('c', 2), ('b', 1)]

  • 多条件排序(先按值,再按键):
  • python

    d = {'a': 2, 'b': 2, 'c': 1}

    sorted_multi = sorted(d.items, key=lambda item: (item[1], item[0]))

    结果:[('c', 1), ('a', 2), ('b', 2)]

  • 复杂数据结构排序(如按对象属性):
  • python

    class Person:

    def __init__(self, age):

    self.age = age

    people = {'Alice': Person(25), 'Bob': Person(20)}

    sorted_people = sorted(people.items, key=lambda x: x[1].age)

    示例代码

    python

    按值排序并生成有序字典

    d = {'a': 3, 'b': 1, 'c': 2}

    sorted_by_value = dict(sorted(d.items, key=lambda item: item[1]))

    print(sorted_by_value) 输出:{'b': 1, 'c': 2, 'a': 3}

    按键降序排序

    sorted_by_key_desc = sorted(d.items, reverse=True)

    print(sorted_by_key_desc) 输出:[('c', 2), ('b', 1), ('a', 3)]

    通过灵活使用`key`和`reverse`参数,可以实现各种复杂的字典排序需求。

    版权声明: 知妳网保留所有权利,部分内容为网络收集,如有侵权,请联系QQ793061840删除,添加请注明来意。

    原文链接:https://www.6g9.cn/bkkp/ddd80Az5XV1NTDw.html

    发表评论:

    关于我们
    知妳网是一个专注于知识成长与生活品质的温暖社区,致力于提供情感共鸣、实用资讯与贴心服务。在这里,妳可以找到相关的知识、专业的建议,以及提升自我的优质内容。无论是职场困惑、情感心事,还是时尚美妆、健康生活,知妳网都能精准匹配妳的需求,陪伴妳的每一步成长。因为懂妳,所以更贴心——知妳网,做妳最知心的伙伴!
    联系方式
    电话:
    地址:广东省中山市
    Email:admin@qq.com

    Copyright © 2022 知妳网 Inc. 保留所有权利。 Powered by

    页面耗时0.0613秒, 内存占用1.7 MB, 访问数据库19次