Python实现字典按key或者value进行排序操作示例【sorted】


Posted in Python onMay 03, 2019

本文实例讲述了Python实现字典按key或者value进行排序操作。分享给大家供大家参考,具体如下:

要点:使用到了python的内建函数与lambda函数

代码如下:(可直接复制运行)

# -*- coding:utf-8 -*-
#! python2
print '------定义一个字典d1---------------------------------------'
d1 = {'a':14, 'c':12, 'b':11, 'e':13, 'f':16, 'd':15}
print '------打印d1---------------------------------------'
print d1
print '------遍历字典d1---------------------------------------'
for i in d1:
  print i
print '------遍历字典d1---------------------------------------'
for temp in d1.items():
  print temp
print '------遍历字典的key---------------------------------------'
for key,value in d1.items():
  print key
print '------遍历字典的value---------------------------------------'
for key,value in d1.items():
  print value
print '------遍历字典的key和value---------------------------------------'
for key,value in d1.items():
  print key,value
print '---------------------------------------------'
print '---------------------------------------------'
#
print '------d1.items()与其类型展示---------------------------------------'
res = d1.items()
print 'res = ',res, '\nres type is',type(res)
print '------d1.iteritems()与其类型展示---------------------------------------'
res2 = d1.iteritems()
print 'res = ',res2, '\nres2 type is',type(res2)
print '------d1按value排序(正序:从小到大)---------------------------------------'
res3 = sorted(d1.iteritems(), key=lambda d:d[1], reverse=False)
print 'res3 = ',res3
print '------d1按value排序(倒序:从大到小)---------------------------------------'
res4 = sorted(d1.iteritems(), key=lambda d:d[1], reverse=True)
print 'res4 = ',res4
print '------d1按key排序(倒序:从大到小)---------------------------------------'
res5 = sorted(d1.iteritems(), key=lambda d:d[0], reverse=True)
print 'res5 = ',res5
print '------d1按key排序(正序:从小到大)---------------------------------------'
res6 = sorted(d1.iteritems(), key=lambda d:d[0], reverse=False)
print 'res6 = ',res6
print '------d1中取出key排序后生成一个列表---------------------------------------'
res7 = [key for key,value in res6] # 注:res6是d1按key排序(正序:从小到大)的结果
print 'res7 = ',res7
print '------d1中取出value排序后生成一个列表---------------------------------------'
res8= [value for key,value in res3] # 注:res3是d1按value排序(正序:从小到大)的结果
print 'res8 = ',res8

运行结果:

------定义一个字典d1---------------------------------------
------打印d1---------------------------------------
{'a': 14, 'c': 12, 'b': 11, 'e': 13, 'd': 15, 'f': 16}
------遍历字典d1---------------------------------------
a
c
b
e
d
f
------遍历字典d1---------------------------------------
('a', 14)
('c', 12)
('b', 11)
('e', 13)
('d', 15)
('f', 16)
------遍历字典的key---------------------------------------
a
c
b
e
d
f
------遍历字典的value---------------------------------------
14
12
11
13
15
16
------遍历字典的key和value---------------------------------------
a 14
c 12
b 11
e 13
d 15
f 16
---------------------------------------------
---------------------------------------------
------d1.items()与其类型展示---------------------------------------
res =  [('a', 14), ('c', 12), ('b', 11), ('e', 13), ('d', 15), ('f', 16)]
res type is <type 'list'>
------d1.iteritems()与其类型展示---------------------------------------
res =  <dictionary-itemiterator object at 0x01271E40>
res2 type is <type 'dictionary-itemiterator'>
------d1按value排序(正序:从小到大)---------------------------------------
res3 =  [('b', 11), ('c', 12), ('e', 13), ('a', 14), ('d', 15), ('f', 16)]
------d1按value排序(倒序:从大到小)---------------------------------------
res4 =  [('f', 16), ('d', 15), ('a', 14), ('e', 13), ('c', 12), ('b', 11)]
------d1按key排序(倒序:从大到小)---------------------------------------
res5 =  [('f', 16), ('e', 13), ('d', 15), ('c', 12), ('b', 11), ('a', 14)]
------d1按key排序(正序:从小到大)---------------------------------------
res6 =  [('a', 14), ('b', 11), ('c', 12), ('d', 15), ('e', 13), ('f', 16)]
------d1中取出key排序后生成一个列表---------------------------------------
res7 =  ['a', 'b', 'c', 'd', 'e', 'f']
------d1中取出value排序后生成一个列表---------------------------------------
res8 =  [11, 12, 13, 14, 15, 16]

Python 相关文章推荐
以Python的Pyspider为例剖析搜索引擎的网络爬虫实现方法
Mar 30 Python
Python简单读取json文件功能示例
Nov 30 Python
Flask框架Flask-Login用法分析
Jul 23 Python
Python爬虫将爬取的图片写入world文档的方法
Nov 07 Python
获取django框架orm query执行的sql语句实现方法分析
Jun 20 Python
Linux下升级安装python3.8并配置pip及yum的教程
Jan 02 Python
Python利用Scrapy框架爬取豆瓣电影示例
Jan 17 Python
python用pip install时安装失败的一系列问题及解决方法
Feb 24 Python
Python如何绘制日历图和热力图
Aug 07 Python
python在linux环境下安装skimage的示例代码
Oct 14 Python
Python破解极验滑动验证码详细步骤
May 21 Python
OpenCV-Python实现轮廓的特征值
Jun 09 Python
Python3模拟curl发送post请求操作示例
May 03 #Python
零基础使用Python读写处理Excel表格的方法
May 02 #Python
Python TestCase中的断言方法介绍
May 02 #Python
Python3中的bytes和str类型详解
May 02 #Python
利用pyinstaller打包exe文件的基本教程
May 02 #Python
Python中psutil的介绍与用法
May 02 #Python
Python3.5字符串常用操作实例详解
May 01 #Python
You might like
PHP的FTP学习(三)
2006/10/09 PHP
PHP函数实现从一个文本字符串中提取关键字的方法
2015/07/01 PHP
JavaScript中的其他对象
2008/01/16 Javascript
Tab页界面,用jQuery及Ajax技术实现
2009/09/21 Javascript
Jsonp 跨域的原理以及Jquery的解决方案
2011/06/27 Javascript
一个基于jQuery的树型插件(OrangeTree)使用介绍
2012/05/03 Javascript
判断一个变量是数组Array类型的方法
2013/09/16 Javascript
Javascript中arguments对象详解
2014/10/22 Javascript
jQuery实现Tab菜单滚动切换的方法
2015/09/21 Javascript
Bootstrap3学习笔记(二)之排版
2016/05/20 Javascript
js HTML5 Canvas绘制转盘抽奖
2020/09/13 Javascript
Vue.JS入门教程之处理表单
2016/12/01 Javascript
快速解决vue-cli不能初始化webpack模板的问题
2018/03/20 Javascript
JS遍历DOM文档树的方法实例详解
2018/04/03 Javascript
jquery validate 实现动态增加/删除验证规则操作示例
2019/10/28 jQuery
python变量不能以数字打头详解
2016/07/06 Python
Django中如何防范CSRF跨站点请求伪造攻击的实现
2019/04/28 Python
Python3 串口接收与发送16进制数据包的实例
2019/06/12 Python
pytorch在fintune时将sequential中的层输出方法,以vgg为例
2019/08/20 Python
基于python实现雪花算法过程详解
2019/11/16 Python
通过代码简单了解django model序列化作用
2020/11/12 Python
CSS3 实现发光边框特效
2020/11/11 HTML / CSS
瑞士网球商店:Tennis-Point
2020/03/12 全球购物
办公室文秘自我鉴定
2013/09/21 职场文书
花卉与景观设计系大学生求职信
2013/10/01 职场文书
服务员岗位责任制
2014/02/11 职场文书
餐饮营销方案
2014/02/23 职场文书
党风廉设责任书
2014/04/16 职场文书
店面出租协议书范本
2014/11/28 职场文书
个人承诺书格式范文
2015/04/29 职场文书
单位计划生育责任书
2015/05/09 职场文书
小学生家长意见
2015/06/03 职场文书
工作汇报材料难写?方法都在这里了!
2019/07/01 职场文书
JavaScript 定时器详情
2021/11/11 Javascript
Java实现学生管理系统(IO版)
2022/02/24 Java/Android
MySQL中dd::columns表结构转table过程及应用详解
2022/09/23 MySQL