这篇文章将为大家详细讲解有关在Python中对dicts列表进行排序的方法,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
问题:在使用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'}]
关于在Python中对dicts列表进行排序的方法就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。