在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实现baidu hi自动登录的代码
Feb 10 Python
Python中使用摄像头实现简单的延时摄影技术
Mar 27 Python
在Python的Django框架中创建和使用模版
Jul 15 Python
Python实现对百度云的文件上传(实例讲解)
Oct 21 Python
python登录并爬取淘宝信息代码示例
Dec 09 Python
python机器学习理论与实战(六)支持向量机
Jan 19 Python
Python网络爬虫神器PyQuery的基本使用教程
Feb 03 Python
Python列表切片操作实例总结
Feb 19 Python
Python 中@property的用法详解
Jan 15 Python
Python使用多进程运行含有任意个参数的函数
May 02 Python
Django使用rest_framework写出API
May 21 Python
史上最详细的Python打包成exe文件教程
Jan 17 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
php生成文件
2007/01/15 PHP
php自动获取目录下的模板的代码
2010/08/08 PHP
ThinkPHP中的系统常量和预定义常量集合
2014/07/01 PHP
PHP Smarty模版简单使用方法
2016/03/30 PHP
php中通用的excel导出方法实例
2017/12/30 PHP
PHP 7.4中使用预加载的方法详解
2019/07/08 PHP
PHP数组与字符串互相转换实例
2020/05/05 PHP
Javascript操纵Cookie实现购物车程序
2007/02/15 Javascript
dotopAlert 提示用户需安装播放器的代码
2012/09/17 Javascript
jquery将一个表单序列化为一个对象的方法
2014/01/03 Javascript
jQuery的animate函数学习记录
2014/08/08 Javascript
javascript 动态创建表格
2015/01/08 Javascript
vuejs动态组件给子组件传递数据的方法详解
2016/09/09 Javascript
Express之get,pos请求参数的获取
2017/05/02 Javascript
jQuery用户头像裁剪插件cropbox.js使用详解
2017/06/07 jQuery
ionic App问题总结系列之ionic点击系统返回键退出App
2017/08/19 Javascript
Bootstrap栅格系统的使用详解
2017/10/30 Javascript
React注册倒计时功能的实现
2018/09/06 Javascript
Vue项目中使用jquery的简单方法
2019/05/16 jQuery
vue-cli2与vue-cli3在一台电脑共存的实现方法
2019/09/25 Javascript
Python使用xlwt模块操作Excel的方法详解
2018/03/27 Python
Python秒算24点实现及原理详解
2019/07/29 Python
详解python os.path.exists判断文件或文件夹是否存在
2020/11/16 Python
解决pip安装tensorflow中出现的no module named tensorflow.python 问题方法
2021/02/20 Python
HTML5 用动画的表现形式装载图像
2016/03/08 HTML / CSS
在HTML5中使用MathML数学公式的简单讲解
2016/02/19 HTML / CSS
研究生自荐信
2013/10/09 职场文书
幼儿园实习生辞职信
2014/01/20 职场文书
关于逃课的检讨书
2014/01/23 职场文书
学生干部学习的自我评价
2014/02/18 职场文书
大学学生会竞选演讲稿
2014/04/25 职场文书
党章培训心得体会
2014/09/04 职场文书
工厂标语大全
2014/10/06 职场文书
同意迁入证明模板
2014/10/26 职场文书
幼儿教师2014年度工作总结
2014/12/16 职场文书
vue项目中的支付功能实现(微信支付和支付宝支付)
2022/02/18 Vue.js