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 相关文章推荐
Python3实现的腾讯微博自动发帖小工具
Nov 11 Python
python爬虫的数据库连接问题【推荐】
Jun 25 Python
python-tkinter之按钮的使用,开关方法
Jun 11 Python
python实现多进程通信实例分析
Sep 01 Python
python生成器推导式用法简单示例
Oct 08 Python
python实现小世界网络生成
Nov 21 Python
基于Tensorflow一维卷积用法详解
May 22 Python
Python如何用wx模块创建文本编辑器
Jun 07 Python
python3.4中清屏的处理方法
Jul 06 Python
python smtplib发送多个email联系人的实现
Oct 09 Python
详解pandas apply 并行处理的几种方法
Feb 24 Python
Python基础之hashlib模块详解
May 06 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实现登陆验证码(类似条行码状)
2006/10/09 PHP
解析php多线程下载远程多个文件
2013/06/25 PHP
PHP实现简单爬虫的方法
2015/07/29 PHP
PHP中Enum(枚举)用法实例详解
2015/12/07 PHP
Yii框架页面渲染操作实例详解
2019/07/19 PHP
JavaScript获取/更改文本框的值的实例代码
2013/08/02 Javascript
jquery滚动条插件jScrollPane的使用介绍
2013/11/08 Javascript
浅谈JavaScript字符串拼接
2015/06/25 Javascript
轻松学习jQuery插件EasyUI EasyUI创建树形网络(1)
2015/11/30 Javascript
nodejs 的 session 简单使用
2016/06/06 NodeJs
Three.js基础部分学习
2017/01/08 Javascript
Vue组件通信的四种方式汇总
2018/02/08 Javascript
原生js实现公告滚动效果
2021/01/10 Javascript
vue+echarts实现可拖动节点的折线图(支持拖动方向和上下限的设置)
2019/04/12 Javascript
layer.open回调获取弹出层参数的实现方法
2019/09/10 Javascript
详解NodeJs项目 CentOs linux服务器线上部署
2019/09/16 NodeJs
JavaScript 实现HTML DOM增删改查操作的常见方法详解
2020/01/04 Javascript
el-table树形表格表单验证(列表生成序号)
2020/05/31 Javascript
详解javascript脚本何时会被执行
2021/02/05 Javascript
Python中time模块和datetime模块的用法示例
2016/02/28 Python
快速查询Python文档方法分享
2017/12/27 Python
Python使用微信itchat接口实现查看自己微信的信息功能详解
2019/08/22 Python
python 循环数据赋值实例
2019/12/02 Python
tensorflow图像裁剪进行数据增强操作
2020/06/30 Python
时装界的“朋克之母”:Vivienne Westwood
2017/07/06 全球购物
满月酒答谢词
2014/01/14 职场文书
学生打架检讨书大全
2014/01/23 职场文书
网上卖盒饭创业计划书
2014/01/26 职场文书
领导班子在批评与自我批评座谈会上的发言
2014/09/28 职场文书
党员批评与自我批评材料
2014/10/14 职场文书
2014年行政助理工作总结
2014/11/19 职场文书
初中生考试作弊检讨书
2014/12/14 职场文书
聋哑人盗窃罪辩护词
2015/05/21 职场文书
2016新年年会主持词
2015/07/06 职场文书
2019大学竞选班长发言稿
2019/06/27 职场文书
漫改真人电影「萌系男友是燃燃的橘色」公开先导视觉图
2022/03/21 日漫