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 相关文章推荐
python人人网登录应用实例
Sep 26 Python
python使用cStringIO实现临时内存文件访问的方法
Mar 26 Python
Python入门之modf()方法的使用
May 15 Python
浅谈Python爬取网页的编码处理
Nov 04 Python
python 内置函数filter
Jun 01 Python
python之pandas用法大全
Mar 13 Python
使用celery执行Django串行异步任务的方法步骤
Jun 06 Python
Django中URL的参数传递的实现
Aug 04 Python
ubuntu 安装pyqt5和卸载pyQt5的方法
Mar 24 Python
python属于解释型语言么
Jun 15 Python
详解Python中如何将数据存储为json格式的文件
Nov 18 Python
python 进制转换 int、bin、oct、hex的原理
Jan 13 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
php 购物车实例(申精)
2009/05/11 PHP
WordPress中用于更新伪静态规则的PHP代码实例讲解
2015/12/18 PHP
php生成Android客户端扫描可登录的二维码
2016/05/13 PHP
checkbox 多选框 联动实现代码
2008/10/22 Javascript
JavaScript 设计模式学习 Factory
2009/07/29 Javascript
AlertBox 弹出层信息提示框效果实现步骤
2010/10/11 Javascript
非主流的textarea自增长实现js代码
2011/12/20 Javascript
javascript仿qq界面的折叠菜单实现代码
2012/12/12 Javascript
Javascript中常见的校验如域名、手机、邮箱等等
2014/01/02 Javascript
javascript数组操作总结和属性、方法介绍
2014/04/05 Javascript
快速学习jQuery插件 jquery.validate.js表单验证插件使用方法
2015/12/01 Javascript
JS正则表达式判断有效数实例代码
2017/03/13 Javascript
nodeJS实现简单网页爬虫功能的实例(分享)
2017/06/08 NodeJs
bootstrap+jQuery 实现下拉菜单中复选框全选和全不选效果
2017/06/12 jQuery
基于JS实现html中placeholder属性提示文字效果示例
2018/04/19 Javascript
Vue中如何实现proxy代理
2018/04/20 Javascript
vue2.0 element-ui中el-select选择器无法显示选中的内容(解决方法)
2018/08/24 Javascript
Vue组件教程之Toast(Vue.extend 方式)详解
2019/01/27 Javascript
原生js实现无缝轮播图效果
2021/01/28 Javascript
零基础写python爬虫之爬虫框架Scrapy安装配置
2014/11/06 Python
教你用Python脚本快速为iOS10生成图标和截屏
2016/09/22 Python
解决pandas.DataFrame.fillna 填充Nan失败的问题
2018/11/06 Python
完美解决Python matplotlib绘图时汉字显示不正常的问题
2019/01/29 Python
django多文件上传,form提交,多对多外键保存的实例
2019/08/06 Python
pytorch 输出中间层特征的实例
2019/08/17 Python
python 使用事件对象asyncio.Event来同步协程的操作
2020/05/04 Python
python2.7使用scapy发送syn实例
2020/05/05 Python
python3定位并识别图片验证码实现自动登录功能
2021/01/29 Python
Omio俄罗斯:一次搜索公共汽车、火车和飞机的机票
2018/11/17 全球购物
中专毕业个人的自荐信格式
2013/09/21 职场文书
货代行业个人求职简历的自我评价
2013/10/22 职场文书
工厂仓管员岗位职责
2014/01/01 职场文书
活动邀请函范文
2014/01/19 职场文书
消防安全责任书
2014/04/14 职场文书
机关办公室岗位职责
2014/04/16 职场文书
宾馆卫生管理制度
2015/08/06 职场文书