Python实现字典的遍历与排序功能示例


Posted in Python onDecember 23, 2017

本文实例讲述了Python实现字典的遍历与排序功能。分享给大家供大家参考,具体如下:

字典的遍历:

首先:

items():

功能:以列表的形式返回字典键值对

eg:

dict_={"a":2,"b":3,"c":6}
dict_.items()
>>>[('a',2),('b',3),('c',6)]

iteritems():

功能:以迭代器对象返回字典键值对

# -*- coding: cp936 -*-
dict1={'a':1,'b':2,'c':3}
#第一种:
for d in dict1:
  print "%s:%d"%(d,dict1[d])
print
#第二种:
for k,v in dict1.items():
  print "%s:%d"%(k,v)
print
#第三种:
for k,v in dict1.iteritems():
  print "%s:%d"%(k,v)
print
#第四种:
for k in dict1.iterkeys():
  print "%s:%d"%(k,dict1[k])
print
#第五种:
for v in dict1.itervalues():
  print v
print
#第六种:
for k,v in zip(dict1.iterkeys(),dict1.itervalues()):
  print "%s:%d"%(k,v)
print

zip()函数可以把列表合并,并创建一个元祖对的列表。

eg:

list1=[1,2,3]
list2=[4,5,6]
zip(a,b)
>>>[(1,4),(2,5),(3,6)]

zip()函数参数可以是任何类型的序列,也可以有两个以上的参数,当传入参数的长度不同时,zip自动以最短序列长度为准进行截取,获得元祖。

字典的排序:

首先:

函数sorted(dic,value,reverse)

过程:第一个参数传递给第二个参数“键-键值”,第二个参数取出其中的键[0]或键值[1]

dic为比较函数,value为排序对象(键或者键值)

reverse注明升序排序或是降序排序,值有true-降序和false-升序(默认值)

eg:按字典的键值排序(把dict[1]换成dict[0]就是按字典的键排序)

sorted(dict.iteritems(),key=lambda dict:dict[1],reverse=True)

解释说明:

dict.iteritems()得到[(键,键值),(键,键值),(键,键值)...]的列表。然后用sorted方法,通过key这个参数指定排序是按照键值,也就是第一个元素d[1]的值来排序。reverse=True表示需要翻转的(即降序排序),默认是升序排序。

函数lambda与函数iteritems()

lambda

功能:创建匿名函数

eg:

fun_1=lambda a:a+1
print fun_1(1)
>>>2
fun_2=lambda a,b:a+2*b
fun_2(1,1)
>>>3

iteritems()

功能:以迭代器对象返回字典键值对

# -*- coding: cp936 -*-
print "按字典键值进行排序"
dict1={'a':3,'c':1,'b':2}
#升序:
dict_a=sorted(dict1.iteritems(),key=lambda dict1:dict1[1],reverse=False) 
#降序排序reverse=True ,该参数可省,默认为False。 或者dict_a.reverse()
print dict_a,"\n"
#降序:
dict2={'a':3,'c':1,'b':2}
dict_b=sorted(dict2.iteritems(),key=lambda dict2:dict2[1],reverse=True)
print dict_b,"\n"
##############################################################
print "按字典键进行排序"
dict3={'d':6,'e':5,'f':4}
#降序:
dict_c=sorted(dict3.iteritems(),key=lambda dict3:dict3[0],reverse=True) 
#降序排序reverse=True ,该参数可省,默认为False。 或者dict_a.reverse()
print dict_c,"\n" 
#升序:
dict4={'d':6,'e':5,'f':4}
dict_d=sorted(dict4.iteritems(),key=lambda dict4:dict4[0])#改为降序与上面同理
print dict_d,"\n"
Python 相关文章推荐
python求解水仙花数的方法
May 11 Python
简单谈谈Python中函数的可变参数
Sep 02 Python
关于Django显示时间你应该知道的一些问题
Dec 25 Python
zookeeper python接口实例详解
Jan 18 Python
在python带权重的列表中随机取值的方法
Jan 23 Python
python使用KNN算法识别手写数字
Apr 25 Python
python 爬取学信网登录页面的例子
Aug 13 Python
Python 实现一个手机号码获取妹子名字的功能
Sep 25 Python
python实现通过队列完成进程间的多任务功能示例
Oct 28 Python
OpenCV python sklearn随机超参数搜索的实现
Jan 17 Python
python实现高斯投影正反算方式
Jan 17 Python
Django框架之路由用法
Jun 10 Python
Python实现字典按照value进行排序的方法分析
Dec 23 #Python
Python使用Matplotlib实现雨点图动画效果的方法
Dec 23 #Python
简单了解什么是神经网络
Dec 23 #Python
python用户管理系统的实例讲解
Dec 23 #Python
python队列通信:rabbitMQ的使用(实例讲解)
Dec 22 #Python
python3写爬取B站视频弹幕功能
Dec 22 #Python
机器学习经典算法-logistic回归代码详解
Dec 22 #Python
You might like
php截取utf-8中文字符串乱码的解决方法
2010/03/29 PHP
解析PayPal支付接口的PHP开发方式
2010/11/28 PHP
在Laravel中使用DataTables插件的方法
2018/05/29 PHP
PHP PDOStatement::bindParam讲解
2019/01/30 PHP
Prototype Function对象 学习
2009/07/12 Javascript
javascript模版引擎-tmpl的bug修复与性能优化分析
2011/10/23 Javascript
20款非常优秀的 jQuery 工具提示插件 推荐
2012/07/15 Javascript
node.js中的emitter.emit方法使用说明
2014/12/10 Javascript
Bootstrap网格系统详解
2016/04/26 Javascript
jQuery实现每隔几条元素增加1条线的方法
2016/06/27 Javascript
基于vue实现swipe轮播组件实例代码
2017/05/24 Javascript
详解require.js配置路径的用法和css的引入
2017/09/06 Javascript
bootstrap3中container与container_fluid外层容器的区别讲解
2017/12/04 Javascript
vue 点击按钮增加一行的方法
2018/09/07 Javascript
浅谈layui使用模板引擎动态渲染元素要注意的问题
2019/09/14 Javascript
分享JS表单验证源码(带错误提示及密码等级)
2020/01/05 Javascript
逐行分析鸿蒙系统的 JavaScript 框架(推荐)
2020/09/17 Javascript
Python编写简单的HTML页面合并脚本
2016/07/11 Python
Python查找文件中包含中文的行方法
2018/12/19 Python
在Pycharm中自动添加时间日期作者等信息的方法
2019/01/16 Python
python实现动态数组的示例代码
2019/07/15 Python
python爬虫中多线程的使用详解
2019/09/23 Python
python操作cfg配置文件方式
2019/12/22 Python
pytorch 实现模型不同层设置不同的学习率方式
2020/01/06 Python
利用Opencv实现图片的油画特效实例
2021/02/28 Python
用CSS禁用输入法(CSS3 UI规范)实例解析
2012/12/04 HTML / CSS
优秀交警事迹材料
2014/01/26 职场文书
手术室护士长竞聘书
2014/03/31 职场文书
教师新年寄语
2014/04/03 职场文书
校园标语大全
2014/06/19 职场文书
教师遵守党的政治纪律情况对照检查材料
2014/09/26 职场文书
2014年工商所工作总结
2014/12/09 职场文书
七一表彰大会简报
2015/07/20 职场文书
创业计划书之孕婴生活馆
2019/11/11 职场文书
python如何正确使用yield
2021/05/21 Python
HTML5之高度塌陷问题的解决
2022/06/01 HTML / CSS