Python实现字典排序、按照list中字典的某个key排序的方法示例


Posted in Python onDecember 18, 2018

本文实例讲述了Python实现字典排序、按照list中字典的某个key排序的方法。分享给大家供大家参考,具体如下:

1.给字典按照value按照从大到小排序

排序

dict = {'a':21, 'b':5, 'c':3, 'd':54, 'e':74, 'f':0}
new_dict = sorted(dict.iteritems(), key=lambda d:d[1], reverse = True)
print new_dict

输出:

[('e', 74), ('d', 54), ('a', 21), ('b', 5), ('c', 3), ('f', 0)]

2. python按照list中的字典的某key排序:

例子:

s=[
{"no":28,"score":90},
{"no":25,"score":90},
{"no":1,"score":100},
{"no":2,"score":20},
]
print "original s: ",s
# 单级排序,仅按照score排序
new_s = sorted(s,key = lambda e:e.__getitem__('score'))
print "new s: ", new_s
# 多级排序,先按照score,再按照no排序
new_s_2 = sorted(new_s,key = lambda e:(e.__getitem__('score'),e.__getitem__('no')))
print "new_s_2: ", new_s_2

输出:

original s:  [{'score': 90, 'no': 28}, {'score': 90, 'no': 25}, {'score': 100, 'no': 1}, {'score': 20, 'no': 2}]
new s:  [{'score': 20, 'no': 2}, {'score': 90, 'no': 28}, {'score': 90, 'no': 25}, {'score': 100, 'no': 1}]
new_s_2:  [{'score': 20, 'no': 2}, {'score': 90, 'no': 25}, {'score': 90, 'no': 28}, {'score': 100, 'no': 1}]

说明

1.new_s和new_s2的区别在于当score均为90的时候,重新按照no排序

2.顺序为从小到大,若在sorted函数的参数加上reverse = True则为从大到小

Python 相关文章推荐
可用于监控 mysql Master Slave 状态的python代码
Feb 10 Python
Python获取服务器信息的最简单实现方法
Mar 05 Python
Python的Flask框架中实现登录用户的个人资料和头像的教程
Apr 20 Python
python实现数值积分的Simpson方法实例分析
Jun 05 Python
python使用pil进行图像处理(等比例压缩、裁剪)实例代码
Dec 11 Python
如何在django里上传csv文件并进行入库处理的方法
Jan 02 Python
PyQt5实现简易电子词典
Jun 25 Python
使用Python计算玩彩票赢钱概率
Jun 26 Python
python 日期排序的实例代码
Jul 11 Python
win7上tensorflow2.2.0安装成功 引用DLL load failed时找不到指定模块 tensorflow has no attribute xxx 解决方法
May 20 Python
Python使用socket模块实现简单tcp通信
Aug 18 Python
关于python中导入文件到list的问题
Oct 31 Python
python实现求特征选择的信息增益
Dec 18 #Python
python实现连续图文识别
Dec 18 #Python
Django ManyToManyField 跨越中间表查询的方法
Dec 18 #Python
Python列表list排列组合操作示例
Dec 18 #Python
python实现二维插值的三维显示
Dec 17 #Python
Python实现分段线性插值
Dec 17 #Python
Python 获取主机ip与hostname的方法
Dec 17 #Python
You might like
解析左右值无限分类的实现算法
2013/06/20 PHP
php生成图片验证码的实例讲解
2015/08/03 PHP
JS打印gridview实现原理及代码
2013/02/05 Javascript
JavaScript事件委托的技术原理探讨示例
2014/04/17 Javascript
使用JavaScript和C#中获得referer
2014/11/14 Javascript
NodeJS中Buffer模块详解
2015/01/07 NodeJs
KnockoutJS 3.X API 第四章之数据控制流foreach绑定
2016/10/10 Javascript
javascript入门之window对象【新手必看】
2016/11/22 Javascript
javascript实现鼠标点击页面 移动DIV
2016/12/02 Javascript
js倒计时小实例(多次定时)
2016/12/08 Javascript
浅谈Javascript中的Label语句
2016/12/14 Javascript
使用JavaScript实现一个小程序之99乘法表
2017/09/21 Javascript
JavaScript代码实现txt文件的上传预览功能
2018/03/27 Javascript
如何将HTML字符转换为DOM节点并动态添加到文档中详解
2018/08/19 Javascript
vue组件开发之tab切换组件使用详解
2020/08/21 Javascript
python字符串连接的N种方式总结
2014/09/17 Python
pandas按若干个列的组合条件筛选数据的方法
2018/04/11 Python
Python3 SSH远程连接服务器的方法示例
2018/12/29 Python
python实现猜拳小游戏
2020/04/05 Python
python解析命令行参数的三种方法详解
2019/11/29 Python
Python Gluon参数和模块命名操作教程
2019/12/18 Python
Python如何优雅删除字符列表空字符及None元素
2020/06/25 Python
Scrapy实现模拟登录的示例代码
2021/02/21 Python
澳洲国民品牌乡村路折扣店:Country Road & Trenery Outlet
2018/04/19 全球购物
汽车运用工程毕业生自荐信
2013/10/29 职场文书
自我反省检讨书
2014/01/23 职场文书
七年级生物教学反思
2014/01/30 职场文书
企业演讲比赛主持词
2014/03/18 职场文书
《乡下孩子》教学反思
2014/04/17 职场文书
红色故事演讲稿
2014/05/22 职场文书
超市创业计划书
2014/09/15 职场文书
处级干部反四风个人对照检查材料思想汇报
2014/09/27 职场文书
股东出资证明书范例
2014/10/04 职场文书
2014年教师工作总结
2014/11/10 职场文书
导游词之南京莫愁湖公园
2019/11/13 职场文书
详解CSS开发过程中的20个快速提升技巧
2021/05/21 HTML / CSS