详解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 help()函数用法详解
Mar 11 Python
Python中time模块与datetime模块在使用中的不同之处
Nov 24 Python
Python线程下使用锁的技巧分享
Sep 13 Python
浅谈numpy生成数组的零值问题
Nov 12 Python
在python中实现将一张图片剪切成四份的方法
Dec 05 Python
Python函数参数匹配模型通用规则keyword-only参数详解
Jun 10 Python
numpy.random.shuffle打乱顺序函数的实现
Sep 10 Python
python 消费 kafka 数据教程
Dec 21 Python
python使用列表的最佳方案
Aug 12 Python
Python绘制词云图之可视化神器pyecharts的方法
Feb 23 Python
Python 数据可视化之Seaborn详解
Nov 02 Python
Python利用zhdate模块实现农历日期处理
Mar 31 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
php计算十二星座的函数代码
2012/08/21 PHP
php获取本周开始日期和结束日期的方法
2015/03/09 PHP
PHP输入流php://input实例讲解
2015/12/22 PHP
解决php写入数据库乱码的问题
2019/09/17 PHP
JavaScript DOM 添加事件
2009/02/14 Javascript
Javascript动态绑定事件的简单实现代码
2010/12/25 Javascript
js控制表单奇偶行样式的简单方法
2013/07/31 Javascript
Jquery.addClass始终无效原因分析
2013/09/08 Javascript
jQuery中get和post方法传值测试及注意事项
2014/08/08 Javascript
[原创]jQuery常用的4种加载方式分析
2016/07/25 Javascript
AngularJS中$http的交互问题
2017/03/29 Javascript
vue 多入口文件搭建 vue多页面搭建的实例讲解
2018/03/12 Javascript
JS多个异步请求 按顺序执行next实现解析
2019/09/16 Javascript
react用Redux中央仓库实现一个todolist
2019/09/29 Javascript
[02:19]2014DOTA2国际邀请赛 专访820少年们一起去追梦吧
2014/07/14 DOTA
Python使用email模块对邮件进行编码和解码的实例教程
2016/07/01 Python
Python编程pygame模块实现移动的小车示例代码
2018/01/03 Python
python爬取各类文档方法归类汇总
2018/03/22 Python
对sklearn的使用之数据集的拆分与训练详解(python3.6)
2018/12/14 Python
对python PLT中的image和skimage处理图片方法详解
2019/01/10 Python
Python requests模块实例用法
2019/02/11 Python
详解Python给照片换底色(蓝底换红底)
2019/03/22 Python
python-docx文件定位读取过程(尝试替换)
2020/02/13 Python
python+selenium+PhantomJS抓取网页动态加载内容
2020/02/25 Python
Django如何实现防止XSS攻击
2020/10/13 Python
安装Anaconda3及使用Jupyter的方法
2020/10/27 Python
Python爬虫之Selenium鼠标事件的实现
2020/12/04 Python
html5弹跳球示例代码
2013/07/23 HTML / CSS
现代家居用品及礼品:LBC Modern
2018/06/24 全球购物
会计毕业生自荐信
2013/11/21 职场文书
弘扬雷锋精神活动演讲稿
2014/03/04 职场文书
2014年销售内勤工作总结
2014/12/01 职场文书
护士求职自荐信
2015/03/25 职场文书
Golang二维数组的使用方式
2021/05/28 Golang
简单介绍Python的第三方库yaml
2021/06/18 Python
PostgreSQL 插入INSERT、删除DELETE、更新UPDATE、事务transaction
2022/04/12 PostgreSQL