导语:
本文主要介绍了关于如何在Python中对dicts列表进行排序的相关知识,包括python dict排序,以及java列表排序这些编程知识,希望对大家有参考作用。
问题:我正在使用 MongoDB 组合函数(它类似于 SQL 的 GROUP BY)来聚合项目的一些结果。此功能虽然非常酷,但不会对分组数据进行排序。
解决方案: 下面介绍如何对数据进行排序。 (这只是一行 Python,但很难记住如何去做。)
DATA是mongoDB组函数的输出。我想按照这个列表来排序'ups_ad'。
from pprint import pprintDATA = [
{u'avg': 2.9165000000000001,
u'count': 10.0,
u'total': 29.165000000000003,
u'ups_ad': u'10.194.154.49:80'},
{u'avg': 2.6931000000000003,
u'count': 10.0,
u'total': 26.931000000000001,
u'ups_ad': u'10.194.155.176:80'},
{u'avg': 1.9860909090909091,
u'count': 11.0,
u'total': 21.847000000000001,
u'ups_ad': u'10.195.71.146:80'},
{u'avg': 1.742818181818182,
u'count': 11.0,
u'total': 19.171000000000003,
u'ups_ad': u'10.194.155.48:80'}
]data_sorted = sorted(DATA, key=lambda item: item['ups_ad'])pprint(data_sorted)
结果:
[{u'avg': 2.9165000000000001,
u'count': 10.0,
u'total': 29.165000000000003,
u'ups_ad': u'10.194.154.49:80'},
{u'avg': 2.6931000000000003,
u'count': 10.0,
u'total': 26.931000000000001,
u'ups_ad': u'10.194.155.176:80'},
{u'avg': 1.742818181818182,
u'count': 11.0,
u'total': 19.171000000000003,
u'ups_ad': u'10.194.155.48:80'},
{u'avg': 1.9860909090909091,
u'count': 11.0,
u'total': 21.847000000000001,
u'ups_ad': u'10.195.71.146:80'}]
参考文献:
本文为原创文章,版权归知行编程网所有,欢迎分享本文,转载请保留出处!
你可能也喜欢
- ♥ 列表理解如何使python3代码更紧凑?11/29
- ♥ 如何在python中将文件的数据分成几个段10/21
- ♥ 什么是 python ctypes11/17
- ♥ 在 python 中重写 __new__12/22
- ♥ python中的pyenv是什么12/24
- ♥ Github标星3w+,热榜第一,如何用Python实现所有算法01/21
内容反馈