python的sorted函数对字典按key排序和按value排序
这篇文章是转载的,加入自己的一些消化和理解
1.sorted函数按key值对字典排序
先来基本介绍一下sorted函数,sorted(iterable,key,reverse),sorted一共有iterable,key,reverse这三个参数。
其中iterable表示可以迭代的对象,例如可以是dict.items()、dict.keys()等,key是一个函数,用来选取参与比较的元素,reverse则是用来指定排序是倒序还是顺序,reverse=True(注意是True,不是true)则是倒序,reverse=false时则是顺序,默认时reverse=false。
要按key值对字典排序,则可以使用如下语句:
直接使用sorted(d.keys())就能按key值对字典排序,这里是按照顺序对key值排序的,如果想按照倒序排序的话,则只要将reverse置为True(注意是True,不是true)即可。
2.sorted函数按value值对字典排序
要对字典的value排序则需要用到key参数,在这里主要提供一种使用lambda表达式的方法,如下:
注意这里的上面的用法其实是等效于"非交互模式下的"
d=sorted(d.items(),key=lambda item:item[1])
此时print d的结果是:
{'lidaming':19,'wangyan':21,'lilee':25,'liqun':32}
如果“非交互模式”下使用:
sorted(d.items(),key=lambda item:item[1])
此时print d的结果是:
[('lidaming',19),('wangyan',21),('lilee',25),('liqun',32)]
这里的d.items()实际上是将d转换为可迭代对象,迭代对象的元素为(‘lilee’,25)、(‘wangyan’,21)、(‘liqun’,32)、(‘lidaming’,19),items()方法将字典的元素转化为了元组,而这里key参数对应的lambda表达式的意思则是选取元组中的第二个元素作为比较参数(如果写作key=lambda item:item[0]的话则是选取第一个元素作为比较对象,也就是key值作为比较对象。lambda x:y中x表示输出参数,y表示lambda函数的返回值),所以采用这种方法可以对字典的value进行排序。注意排序后的返回值是一个list,而原字典中的名值对被转换为了list中的元组。
python的sorted函数对字典按key排序和按value排序相关推荐
- python中sorted函数逆序_Python中sorted函数的用法(转)
[Python] sorted函数 我们需要对List.Dict进行排序,Python提供了两个方法 对给定的List L进行排序, 方法1.用List的成员函数sort进行排序,在本地进行排序,不返 ...
- python的sorted函数用法_Python sorted函数及用法
sorted() 做为 Python 内嵌函数之一,其作用是对序列(列表.元组.词典.结合.还包含字符串数组)开展排序. sorted() 函数的基础英语的语法文件格式以下: list = sorte ...
- Python 为什么list不能作为字典的key?
Python 为什么list不能作为字典的key? Posted on 2017年1月12日 by laixintao 7 Comments 很多Python初学者经常会有这样的疑问,为什么Pytho ...
- python中sorted函数的作用_Python中排序方法sort、函数sorted的key参数的作用分析
从Python2.4开始,list.sort方法 和 sorted方法 都增加了一个 'key' 参数用来在进行比较之前指定每个列表元素上要调用的函数,将函数的返回值作为比较的依据. 那么怎么使用这个 ...
- pythonsorted_[转].Python中sorted函数的用法
我们需要对List.Dict进行排序,Python提供了两个方法对给定的List L进行排序,方法1.用List的成员函数sort进行排序,在本地进行排序,不返回副本方法2.用built-in函数so ...
- Python中sorted函数的用法
我们需要对List.Dict进行排序,Python提供了两个方法,对给定的List L进行排序. 方法1.用List的成员函数sort进行排序,在本地进行排序,不返回副本 方法2.用built-in函 ...
- python中sorted()函数的用法
一. 定义 sorted()函数对所有可迭代的对象进行排序操作 二. 语法 sorted(iterable [, key[, reverse]]]) iterable:可迭代对象 key:主要是用来进 ...
- python中sorted()函数的用法_Python中的Sorted()函数
在本教程中,我们将学习Python中的sorted()函数. 函数sorted()用于对可迭代对象进行升序或降序排序.我们甚至可以根据不同的键和值对字典列表进行排序.让我们充分利用sorted()函数 ...
- 【Python】sorted函数的使用
1.概述 sorted()函数是python自带的排序函数,只要是可迭代对象都可以用sorted函数进行排序. sorted()函数在排序后会产生一个新的序列,原有的序列依旧存在. 函数形式 sort ...
最新文章
- python 二进制流转图片_Python零基础入门到精通-5.1节:Python程序的执行过程
- 深入剖析Redis系列(七) - Redis数据结构之列表
- 技术专题讨论:JPA vs MyBatis ?您如何选择?(有奖活动)
- Mysql共享锁、排他锁、悲观锁、乐观锁及其使用场景
- centos 安装 py pyhs2
- Xcode的简单使用
- TensorFlow的可训练变量和自动求导机制
- linux 键盘过滤,linux – 需要拦截HID Keyboard事件(然后阻止它们)
- mysql定义和调用存储过程
- html5 尾迹特效,如何设置ECharts线图的特效
- 2019ccpc河北省赛总结
- (附源码)spring boot企业合同管理系统 毕业设计 161456
- 通过微信聊天记录生成词云
- 手机里面android什么意思,wipe什么意思?安卓手机如何wipe
- OpenGL基础入门及准备
- android 禁止第三方相机,谷歌突然宣布,Android 11推出新规,第三方相机软件猝不及防...
- 数学定理【转自百度百科】
- 云服务器可以用来做什么
- python中的进度条tqdm模块, 让进度可视
- 汇编:裴波那契数列前50项
热门文章
- hdu 4864(2) 线段树
- CSS3 border-image的使用方法
- 越过 __chkesp 检测的缓冲区溢出
- 各大门户网站Flash和JS实现的图片幻灯片切换特效代码文件下载:
- linux git中央仓库地址,如何在Linux上搭建一个Git中央仓库
- bootstrap算法_决策树算法之随机森林
- js导入,导出exel表格
- Caffe+Kubuntu16.04_X64+CUDA 8.0配置
- VS2012 +PTVS配置
- 文件操作模式扩展、游标操作