微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

python 字典排序方法

# 给定一个字典
d = {
	'b': 1,
	'a': 5,
	'd': 3,
	'c': 2,
	'd': 4
}

调用sorted,指定key

在这里插入图片描述



dict转化为list,排序后再转化为dict

在这里插入图片描述



补充

注意传统的排序方法sort()sorted()用法
sort()是 in-place 方法,会改变调用sort()的那个数据,没有返回值;
sorted()不是in place方法调用之后返回一个新值,有返回值,原来的数据不变。
sort 和 sorted 都可以接受一个key参数:



sort(*, key=None, reverse=False)
方法会对列表进行原地排序,只使用 < 来进行各项间比较。 异常不会被屏蔽 —— 如果有任何比较操作失败,整个排序操作将失败(而列表可能会处于被部分修改的状态)。

sort() 接受两个仅限以关键字形式传入的参数 (仅限关键字参数):
key 指定带有一个参数的函数,用于从每个列表元素中提取比较键 (例如 key=str.lower)。 对应于列表中每一项的键会被计算一次,然后在整个排序过程中使用。 认值 None 表示直接对列表项排序而不计算一个单独的键值。
(所以可以用一个lambda表达式来传给key)
可以使用 functools.cmp_to_key() 将 2.x 风格的 cmp 函数转换为 key 函数
reverse 为一个布尔值。 如果设为 True,则每个列表元素将按反向顺序比较进行排序。
当顺序大尺寸序列时此方法会原地修改该序列以保证空间经济性。 为提醒用户此操作是通过间接影响进行的,它并不会返回排序后的序列(请使用 sorted() 显示地请求一个新的已排序列表实例)。
sort() 方法确保是稳定的。 如果一个排序确保不会改变比较结果相等的元素的相对顺序就称其为稳定的 — 这有利于进行多重排序(例如先按部门、再接薪级排序)。



在这里插入图片描述

参考:

两种方法

三种方法

原文地址:https://www.jb51.cc/wenti/3280847.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐