在Python中实现字典反转案例


Posted in Python onDecember 05, 2020

有时候会碰到需求,将字典来反转,即:字典中的键作为值,而字典中的值作为键。对于字典比较小,可以使用普通方法

方法一:

使用普通方法转换

>>> d = {'a': 1, 'b': 2, 'c': 3}
>>> def invert_dict(d):
...   return dict([(v,k) for (k,v) in d.iteritems()])
...
>>> invert_dict(d)
{1: 'a', 2: 'b', 3: 'c'}

方法二:

使用itertools模块中的izip方法来转换

>>> d = {'a': 1, 'b': 2, 'c': 3, 'd': 4}
>>> from itertools import izip
>>> def invert_dict(d):
...   return dict(izip(d.itervalues(), d.iterkeys()))
...
>>> invert_dict(d)
{1: 'a', 2: 'b', 3: 'c', 4: 'd'}
>>>

备注:

1. 字典比较大时,使用itertools模块中的izip方法来转换要高效的多.

2. 反转之前值应该要确保不是列表这样不可hash的值,否则不能反转.

补充知识:python 字典键和值翻转输出代码

我就废话不多说了,大家还是直接看代码吧~

dict=eval(input()) #输入格式:dict = {"a":1,"b":2}
dict_new={}
try:
  for k,v in dict.items():
    dict_new[v]=k
  print(dict_new)
except:
  print("输入错误")

以上这篇在Python中实现字典反转案例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python中装饰器级连的使用方法示例
Sep 29 Python
Python图形绘制操作之正弦曲线实现方法分析
Dec 25 Python
Python决策树和随机森林算法实例详解
Jan 30 Python
Python自定义线程类简单示例
Mar 23 Python
python 对key为时间的dict排序方法
Oct 17 Python
解决pycharm安装后代码区不能编辑的问题
Oct 28 Python
Mac下Anaconda的安装和使用教程
Nov 29 Python
python实现网页自动签到功能
Jan 21 Python
Python3 Tkinter选择路径功能的实现方法
Jun 14 Python
django连接mysql数据库及建表操作实例详解
Dec 10 Python
python飞机大战pygame游戏框架搭建操作详解
Dec 17 Python
tensorflow中的梯度求解及梯度裁剪操作
May 26 Python
解决python3输入的坑——input()
Dec 05 #Python
python3 使用ssh隧道连接mysql的操作
Dec 05 #Python
python3通过subprocess模块调用脚本并和脚本交互的操作
Dec 05 #Python
python实现启动一个外部程序,并且不阻塞当前进程
Dec 05 #Python
python subprocess pipe 实时输出日志的操作
Dec 05 #Python
python 操作excel表格的方法
Dec 05 #Python
解决python 执行shell命令无法获取返回值的问题
Dec 05 #Python
You might like
如何在WIN2K下安装PHP4.04
2006/10/09 PHP
动易数据转成dedecms的php程序
2007/04/07 PHP
解析PHP缓存函数的使用说明
2013/05/10 PHP
PHP的反射机制实例详解
2017/03/29 PHP
PHP基于XMLWriter操作xml的方法分析
2017/07/17 PHP
PHP SESSION机制的理解与实例
2019/03/22 PHP
Thinkphp整合阿里云OSS图片上传实例代码
2019/04/28 PHP
Yii2框架自定义类统一处理url操作示例
2019/05/25 PHP
js 编码转换 gb2312 和 utf8 互转的2种方法
2013/08/07 Javascript
jquery和js实现对div的隐藏和显示方法
2014/09/26 Javascript
js 操作符汇总
2014/11/08 Javascript
js计算德州扑克牌面值的方法
2015/03/04 Javascript
Javascript实现鼠标框选操作  不是点击选取
2016/04/14 Javascript
Angular中使用ui router实现系统权限控制及开发遇到问题
2016/09/23 Javascript
纯js仿淘宝京东商品放大镜功能
2017/03/02 Javascript
angular+bootstrap的双向数据绑定实例
2017/03/03 Javascript
vue将时间戳转换成自定义时间格式的方法
2018/03/02 Javascript
JavaScript交换两个变量方法实例
2019/11/25 Javascript
JavaScript 获取滚动条位置并将页面滑动到锚点
2021/02/08 Javascript
python在TXT文件中按照某一字符串取出该字符串所在的行方法
2018/12/10 Python
python交换两个变量的值方法
2019/01/12 Python
python可视化爬虫界面之天气查询
2019/07/03 Python
python 用户交互输入input的4种用法详解
2019/09/24 Python
用Python画小女孩放风筝的示例
2019/11/23 Python
python GUI库图形界面开发之PyQt5开发环境配置与基础使用
2020/02/25 Python
Python稀疏矩阵及参数保存代码实现
2020/04/18 Python
python 利用Pyinstaller打包Web项目
2020/10/23 Python
python 获取谷歌浏览器保存的密码
2021/01/06 Python
pycharm 实现调试窗口恢复
2021/02/05 Python
关于老式浏览器兼容HTML5和CSS3的问题
2016/06/01 HTML / CSS
canvas像素点操作之视频绿幕抠图
2018/09/11 HTML / CSS
FC-Moto丹麦:欧洲最大的摩托车服装和头盔商店之一
2019/08/20 全球购物
国际政治个人自荐信范文
2013/11/26 职场文书
优秀求职信
2014/05/29 职场文书
小学课外活动总结
2014/07/09 职场文书
浅谈MySQL之浅入深出页原理
2021/06/23 MySQL