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群发邮件实例代码
Jan 03 Python
在MAC上搭建python数据分析开发环境
Jan 26 Python
浅谈python爬虫使用Selenium模拟浏览器行为
Feb 23 Python
Python实现多态、协议和鸭子类型的代码详解
May 05 Python
Python中Numpy ndarray的使用详解
May 24 Python
django 链接多个数据库 并使用原生sql实现
Mar 28 Python
python实现密度聚类(模板代码+sklearn代码)
Apr 27 Python
python获取系统内存占用信息的实例方法
Jul 17 Python
python自动提取文本中的时间(包含中文日期)
Aug 31 Python
Pytorch 使用tensor特定条件判断索引
Apr 08 Python
python playwright 自动等待和断言详解
Nov 27 Python
Python制作春联的示例代码
Jan 22 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程序员编程注意事项
2008/04/10 PHP
php中的一些数组排序方法分享
2012/07/20 PHP
Laravel 4 初级教程之安装及入门
2014/10/30 PHP
PHP实现批量上传单个文件
2015/12/29 PHP
PHP实现原比例生成缩略图的方法
2016/02/03 PHP
Thinkphp3.2简单解决多文件上传只上传一张的问题
2017/09/26 PHP
js 代码集(学习js的朋友可以看下)
2009/07/22 Javascript
学习ExtJS TextField常用方法
2009/10/07 Javascript
基于jquery完美拖拽,可返回拖动轨迹
2012/03/29 Javascript
jquery中的查找parents与closest方法之间的区别
2013/12/02 Javascript
JavaScript执行顺序详细介绍
2013/12/04 Javascript
js中日期的加减法
2015/05/06 Javascript
jquery插件jquery.nicescroll实现图片无滚动条左右拖拽的方法
2015/08/10 Javascript
jQuery.trim() 函数及trim()用法详解
2015/10/26 Javascript
JavaScript实现同时调用多个函数的方法
2015/11/09 Javascript
Spring mvc 接收json对象
2015/12/10 Javascript
前端自动化开发之Node.js的环境搭建教程
2017/04/01 Javascript
Angular实现一个简单的多选复选框的弹出框指令实例
2017/04/25 Javascript
详解ES6中的三种异步解决方案
2018/06/28 Javascript
解决mpvue + vuex 开发微信小程序vuex辅助函数mapState、mapGetters不可用问题
2018/08/03 Javascript
详解JavaScript栈内存与堆内存
2019/04/04 Javascript
VSCode搭建Vue项目的方法
2020/04/30 Javascript
Element Rate 评分的使用方法
2020/07/27 Javascript
Vuex实现购物车小功能
2020/08/17 Javascript
解决python selenium3启动不了firefox的问题
2018/10/13 Python
用Python实现筛选文件脚本的方法
2018/10/27 Python
Python字典遍历操作实例小结
2019/03/05 Python
python 插入日期数据到Oracle实例
2020/03/02 Python
pyspark给dataframe增加新的一列的实现示例
2020/04/24 Python
Html5移动端获奖无缝滚动动画实现示例
2018/06/25 HTML / CSS
美国钻石商店:Zales
2016/11/20 全球购物
常用UNIX 命令(Linux的常用命令)
2015/12/26 面试题
读群众路线的心得体会
2014/09/03 职场文书
学雷锋献爱心活动总结
2015/05/11 职场文书
2015年秋季运动会加油稿
2015/07/22 职场文书
Python  lambda匿名函数和三元运算符
2022/04/19 Python