按值然后按键对字典进行排序

按值然后按键对字典进行排序,第1张

按值然后按键对字典进行排序

In [62]: y={100:1, 90:4, 99:3, 92:1, 101:1}
In [63]: sorted(y.items(), key=lambda x: (x[1],x[0]), reverse=True)
Out[63]: [(90, 4), (99, 3), (101, 1), (100, 1), (92, 1)]

key=lambda x:(x[1],x[0])
通知
sorted
,对于每个项目
x
y.items()
,使用
(x[1],x[0])
作为代理值进行排序。既然
x
是形式
(key,value)
,就
(x[1],x[0])
屈服
(value,key)
。这将导致
sorted
value
先排序,然后
key
对决胜局进行排序。

reverse=True
告诉
sorted
呈现的结果下降,而不是按升序排列。

有关在Python中进行排序的出色教程,请参见此Wiki页面。

PS。我尝试使用

key=reversed
替代方法,但
reversed(x)
返回一个迭代器,此处未按需要进行比较。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5644660.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存