python分组排序_Python 排序分组问题

python分组排序_Python 排序分组问题_list=[{‘value’:123,’upclock’:1234567},{‘value’:423,’upclock’:2123},{‘value’:123,’upclock’:1234567},{‘value’:423,’upclock’:1123},{‘value’:423,’upclock’:1123},{‘value’:872,’upclock’:…

大家好,又见面了,我是你们的朋友全栈君。

_list = [{‘value’: 123, ‘upclock’: 1234567},

{‘value’: 423, ‘upclock’: 2123},

{‘value’: 123, ‘upclock’: 1234567},

{‘value’: 423, ‘upclock’: 1123},

{‘value’: 423, ‘upclock’: 1123},

{‘value’: 872, ‘upclock’: 1234567},

{‘value’: 423, ‘upclock’: 80}]

print sorted(_list, key=lambda x: (x[‘value’], x[‘upclock’]), reverse=True)

结果

[{‘upclock’: 1234567, ‘value’: 123},

{‘upclock’: 1234567, ‘value’: 123},

{‘upclock’: 80, ‘value’: 423},

{‘upclock’: 1123, ‘value’: 423},

{‘upclock’: 1123, ‘value’: 423},

{‘upclock’: 2123, ‘value’: 423},

{‘upclock’: 1234567, ‘value’: 872}]

上面是一个很简单的例子,先按照value来排序,再按照upclock排序。 有个字段reverse控制是否升降序的,但是这个控制的是整体的。我想要这样的效果,就是默认是升序,但是第二个排序字段upclock又是降序的

结果应该是这样

[{‘upclock’: 1234567, ‘value’: 123},

{‘upclock’: 1234567, ‘value’: 123},

{‘upclock’: 2123, ‘value’: 423},

{‘upclock’: 1123, ‘value’: 423},

{‘upclock’: 1123, ‘value’: 423},

{‘upclock’: 80, ‘value’: 423},

{‘upclock’: 1234567, ‘value’: 872}]

应该怎么写呢?能直接用标准库来实现吗,或者简单一点的逻辑

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

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/149275.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号