Python实现字典的key和values的交换


Posted in Python onAugust 04, 2015

有些时候我们不得已要利用values来反向查询key,有没有简单的方法呢?

下面我给大家列举一些方法,方便大家使用

python3

>>> d1={'a':1,'b':2}
>>> {value:key for key,value in d1.iteritems()}
{1: 'a', 2: 'b'}
>>> {value:key for key,value in d1.iteritems()}[2]
'b'

python2.7

>>> d1={'a':1,'b':2}
>>> dict((value,key) for key,value in d1.iteritems())
{1: 'a', 2: 'b'}

如果有重复的key

>>> d1={'a':1,'b':2,'c':1}
>>> d=defaultdict(list)
>>> for k,v in d1.iteritems():
...   d[v].append(k)
... 
>>> d
defaultdict(<type 'list'>, {1: ['a', 'c'], 2: ['b']})

谢特,太牛逼。。。。。

感谢行语者大神的帮助

以上就是本文的全部内容了,希望对大家学习python能够有所帮助。

Python 相关文章推荐
快速入手Python字符编码
Aug 03 Python
Python 基础之字符串string详解及实例
Apr 01 Python
Python、PyCharm安装及使用方法(Mac版)详解
Apr 28 Python
django使用xlwt导出excel文件实例代码
Feb 06 Python
Python结合ImageMagick实现多张图片合并为一个pdf文件的方法
Apr 24 Python
PyQt5实现类似别踩白块游戏
Jan 24 Python
python中的print()输出
Apr 12 Python
Python Pandas数据结构简单介绍
Jul 03 Python
python+openCV调用摄像头拍摄和处理图片的实现
Aug 06 Python
Python3列表List入门知识附实例
Feb 09 Python
keras输出预测值和真实值方式
Jun 27 Python
一些让Python代码简洁的实用技巧总结
Aug 23 Python
python利用装饰器进行运算的实例分析
Aug 04 #Python
浅谈python多线程和队列管理shell程序
Aug 04 #Python
python中使用序列的方法
Aug 03 #Python
python实现备份目录的方法
Aug 03 #Python
python使用MySQLdb访问mysql数据库的方法
Aug 03 #Python
浅谈Python中列表生成式和生成器的区别
Aug 03 #Python
详解Python3中的Sequence type的使用
Aug 01 #Python
You might like
PHP中的日期处理方法集锦
2007/01/02 PHP
PHP 实现的将图片转换为TXT
2015/10/21 PHP
PHP命令行执行整合pathinfo模拟定时任务实例
2016/08/12 PHP
PHP两种实现无级递归分类的方法
2017/03/02 PHP
Ajax+PHP实现的分类列表框功能示例
2019/02/11 PHP
用js实现下载远程文件并保存在本地的脚本
2008/05/06 Javascript
在jquery中combobox多选的不兼容问题总结
2013/12/24 Javascript
Jquery中offset()和position()的区别分析
2015/02/05 Javascript
Javascript中的匿名函数与封装介绍
2015/03/15 Javascript
JS实现从表格中动态删除指定行的方法
2015/03/31 Javascript
javascript封装简单实现方法
2015/08/11 Javascript
快速掌握Node.js环境的安装与运行方法
2016/02/16 Javascript
Bootstrap中CSS的使用方法
2016/02/17 Javascript
jQuery文件上传控件 Uploadify 详解
2016/06/20 Javascript
关于动态生成dom绑定事件失效的原因及解决方法
2016/08/06 Javascript
Node.js读写文件之批量替换图片的实现方法
2016/09/07 Javascript
在iframe中使bootstrap的模态框在父页面弹出问题
2017/08/07 Javascript
Vue组件之Tooltip的示例代码
2017/10/18 Javascript
vue实现组件之间传值功能示例
2018/07/13 Javascript
Layer弹出层动态获取数据的方法
2018/08/20 Javascript
Vue实现鼠标经过文字显示悬浮框效果的示例代码
2020/10/14 Javascript
利用node.js开发cli的完整步骤
2020/12/29 Javascript
跟老齐学Python之数据类型总结
2014/09/24 Python
解决python3中自定义wsgi函数,make_server函数报错的问题
2017/11/21 Python
vscode 远程调试python的方法
2017/12/01 Python
python使用matplotlib绘制热图
2018/11/07 Python
美国独家设计师眼镜在线光学商店:Glasses Gallery
2017/12/28 全球购物
世界上第一个水枕头:Mediflow
2018/12/06 全球购物
保密工作整改情况汇报
2014/11/06 职场文书
优秀党员先进事迹材料2016
2016/02/29 职场文书
学习心得体会
2019/06/20 职场文书
2019如何书写演讲稿?
2019/07/01 职场文书
超级实用!五步法则,教你写好年终工作总结
2019/12/05 职场文书
Windows下使用Nginx+Tomcat做负载均衡的完整步骤
2021/03/31 Servers
goland 设置project gopath的操作
2021/05/06 Golang
Go语言实现一个简单的并发聊天室的项目实战
2022/03/18 Golang