详解python的sorted函数对字典按key排序和按value排序


Posted in Python onAugust 10, 2018

1.sorted函数按key值对字典排序

先来基本介绍一下sorted函数,sorted(iterable,key,reverse),sorted一共有iterable,key,reverse这三个参数。

其中iterable表示可以迭代的对象,例如可以是 dict.items()、dict.keys()等,key是一个函数,用来选取参与比较的元素,reverse则是用来指定排序是倒序还是顺 序,reverse=true则是倒序,reverse=false时则是顺序,默认时reverse=false。

要按key值对字典排序,则可以使用如下语句:

详解python的sorted函数对字典按key排序和按value排序

直接使用sorted(d.keys())就能按key值对字典排序,这里是按照顺序对key值排序的,如果想按照倒序排序的话,则只要将reverse置为true即可。

2.sorted函数按value值对字典排序

要对字典的value排序则需要用到key参数,在这里主要提供一种使用lambda表达式的方法,如下:

详解python的sorted函数对字典按key排序和按value排序

这里的d.items()实际上是将d转换为可迭代对象,迭代对象的元素为 (‘lilee',25)、(‘wangyan',21)、(‘liqun',32)、(‘lidaming',19),items()方法将字典的元素 转化为了元组,而这里key参数对应的lambda表达式的意思则是选取元组中的第二个元素作为比较参数(如果写作key=lambda item:item[0]的话则是选取第一个元素作为比较对象,也就是key值作为比较对象。lambdax:y中x表示输出参数,y表示lambda 函数的返回值),所以采用这种方法可以对字典的value进行排序。注意排序后的返回值是一个list,而原字典中的名值对被转换为了list中的元组。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
对比Python中__getattr__和 __getattribute__获取属性的用法
Jun 21 Python
python中set常用操作汇总
Jun 30 Python
Python字典简介以及用法详解
Nov 15 Python
python使用itchat库实现微信机器人(好友聊天、群聊天)
Jan 04 Python
对python中raw_input()和input()的用法详解
Apr 22 Python
python实现抖音点赞功能
Apr 07 Python
Python中最好用的命令行参数解析工具(argparse)
Aug 23 Python
浅谈PyQt5中异步刷新UI和Python多线程总结
Dec 13 Python
pytorch模型预测结果与ndarray互转方式
Jan 15 Python
Python如何访问字符串中的值
Feb 09 Python
python3利用Axes3D库画3D模型图
Mar 25 Python
Python Selenium操作Cookie的实例方法
Feb 28 Python
Selenium(Python web测试工具)基本用法详解
Aug 10 #Python
Python生成器generator用法示例
Aug 10 #Python
python 字典修改键(key)的几种方法
Aug 10 #Python
详解python 注释、变量、类型
Aug 10 #Python
python文件操作之批量修改文件后缀名的方法
Aug 10 #Python
Random 在 Python 中的使用方法
Aug 09 #Python
Python中函数参数调用方式分析
Aug 09 #Python
You might like
Sony CFR 320 修复改造
2020/03/14 无线电
php获取服务器信息的实现代码
2013/02/04 PHP
codeigniter框架The URI you submitted has disallowed characters错误解决方法
2014/05/06 PHP
PHP json_encode() 函数详解及中文乱码问题
2015/11/05 PHP
使用jQuery操作Cookies的实现代码
2011/10/09 Javascript
jquery mobile changepage的三种传参方法介绍
2013/09/13 Javascript
js实现在同一窗口浏览图片
2014/09/17 Javascript
网页中表单按回车就自动提交的问题的解决方案
2014/11/03 Javascript
js实现格式化金额,字符,时间的方法
2015/02/26 Javascript
Angular2开发环境搭建教程之VS Code
2017/12/15 Javascript
Angular 如何使用第三方库的方法
2018/04/18 Javascript
你不知道的Vue技巧之--开发一个可以通过方法调用的组件(推荐)
2019/04/15 Javascript
这15个Vue指令,让你的项目开发爽到爆
2019/10/11 Javascript
jQuery实现手风琴效果(蒙版)
2020/01/11 jQuery
js利用拖放实现添加删除
2020/08/27 Javascript
Python入门篇之编程习惯与特点
2014/10/17 Python
Python实现线程池代码分享
2015/06/21 Python
python pyheatmap包绘制热力图
2018/11/09 Python
Python3.5迭代器与生成器用法实例分析
2019/04/30 Python
numpy.linspace函数具体使用详解
2019/05/27 Python
Python实现企业微信机器人每天定时发消息实例
2020/02/25 Python
matplotlib 对坐标的控制,加图例注释的操作
2020/04/17 Python
HTML5 FileReader对象的具体使用方法
2020/05/22 HTML / CSS
英国高档百货连锁店:John Lewis
2017/11/20 全球购物
八皇后问题,输出了所有情况,不过有些结果只是旋转了90度
2016/08/15 面试题
如果重写了对象的equals()方法,需要考虑什么
2014/11/02 面试题
程序员经常用到的UNIX命令
2015/04/13 面试题
人力资源专员自我评价怎么写
2013/09/19 职场文书
创意广告词
2014/03/17 职场文书
幼儿园大班评语大全
2014/04/17 职场文书
公司募捐倡议书
2014/05/14 职场文书
活动总结新闻稿
2014/08/30 职场文书
交通违章检讨书
2014/09/21 职场文书
乡镇党员干部四风对照检查材料思想汇报
2014/09/27 职场文书
新手必备Python开发环境搭建教程
2021/05/28 Python
解决SpringBoot跨域的三种方式
2021/06/26 Java/Android