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生成随机验证码(中文验证码)示例
Apr 03 Python
Ubuntu 下 vim 搭建python 环境 配置
Jun 12 Python
Python实现的文本编辑器功能示例
Jun 30 Python
解决python文件字符串转列表时遇到空行的问题
Jul 09 Python
对Python 2.7 pandas 中的read_excel详解
May 04 Python
Python3非对称加密算法RSA实例详解
Dec 06 Python
python 为什么说eval要慎用
Mar 26 Python
Python中format()格式输出全解
Apr 12 Python
浅谈python3 构造函数和析构函数
Mar 12 Python
Django+Celery实现动态配置定时任务的方法示例
May 26 Python
matplotlib部件之套索Lasso的使用
Feb 24 Python
Python pandas之求和运算和非空值个数统计
Aug 07 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 simple_html_dom.php+正则 采集文章代码
2009/12/24 PHP
使用PHPMYADMIN操作mysql数据库添加新用户和数据库的方法
2010/04/02 PHP
Codeigniter实现智能裁剪图片的方法
2014/06/12 PHP
[原创]CI(CodeIgniter)简单统计访问人数实现方法
2016/01/19 PHP
PHP中PDO连接数据库中各种DNS设置方法小结
2016/05/13 PHP
php日期操作技巧小结
2016/06/25 PHP
PHP实现文件上传与下载
2020/08/28 PHP
baidu博客的编辑友情链接的新的层窗口!经典~支持【FF】
2007/02/09 Javascript
jquery 学习笔记 传智博客佟老师附详细注释
2020/09/12 Javascript
js控制web打印(局部打印)方法整理
2013/05/29 Javascript
js限制文本框只能输入数字方法小结
2014/06/16 Javascript
JavaScript中的逻辑判断符&&、||与!介绍
2014/12/31 Javascript
JavaScript实现的一个倒计时的类
2015/03/12 Javascript
javaScript中with函数用法实例分析
2015/06/08 Javascript
XML文件转化成NSData对象的方法
2015/08/12 Javascript
jQuery列表检索功能实现代码
2017/07/17 jQuery
JavaScript 数组去重并统计重复元素出现的次数实例
2017/12/14 Javascript
在JS循环中使用async/await的方法
2018/10/12 Javascript
vue favicon设置以及动态修改favicon的方法
2018/12/21 Javascript
JavaScript函数重载操作实例浅析
2020/05/02 Javascript
Javascript实现秒表计时游戏
2020/05/27 Javascript
vue实现移动端拖动排序
2020/08/21 Javascript
Python实现好友全头像的拼接实例(推荐)
2017/06/24 Python
原生python实现knn分类算法
2019/10/24 Python
给keras层命名,并提取中间层输出值,保存到文档的实例
2020/05/23 Python
TensorFlow低版本代码自动升级为1.0版本
2021/02/20 Python
HTML5实现视频直播功能思路详解
2017/11/16 HTML / CSS
英国度假别墅预订:Sykes Cottages
2017/06/12 全球购物
加拿大时装零售商:Influence U
2018/12/22 全球购物
早餐连锁店计划书
2014/01/08 职场文书
关于爱国的演讲稿
2014/05/07 职场文书
八项规定对照检查材料
2014/08/31 职场文书
2014个人年度工作总结
2014/12/15 职场文书
2016大学生国家助学贷款承诺书
2016/03/25 职场文书
如何在Python中创建二叉树
2021/03/30 Python
vscode内网访问服务器的方法
2022/06/28 Servers