在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写的服务监控程序实例
Jan 31 Python
深入浅析Python字符编码
Nov 12 Python
Python保存MongoDB上的文件到本地的方法
Mar 16 Python
Python使用修饰器进行异常日志记录操作示例
Mar 19 Python
深入浅析Python中的迭代器
Jun 04 Python
Python基本数据结构之字典类型dict用法分析
Jun 08 Python
python射线法判断检测点是否位于区域外接矩形内
Jun 28 Python
python mqtt 客户端的实现代码实例
Sep 25 Python
Python3内置函数chr和ord实现进制转换
Jun 05 Python
python interpolate插值实例
Jul 06 Python
Python定时任务APScheduler安装及使用解析
Aug 07 Python
python 制作一个gui界面的翻译工具
May 14 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
比特率,大家看看这个就不用收音机音质去比MP3音质了
2021/03/01 无线电
php基础知识:类与对象(2) 自动加载对象
2006/12/13 PHP
php中使用exec,system等函数调用系统命令的方法(不建议使用,可导致安全问题)
2012/09/07 PHP
PHP中的常见魔术方法功能作用及用法实例
2015/07/01 PHP
PHP获取指定日期是星期几的实现方法
2016/11/30 PHP
PHP的图像处理实例小结【文字水印、图片水印、压缩图像等】
2019/12/20 PHP
PHP fopen中文文件名乱码问题解决方案
2020/10/28 PHP
基于jquery实现的可以编辑选择的下拉框的代码
2010/11/19 Javascript
关于JavaScript中原型继承中的一点思考
2012/07/25 Javascript
jQuery使用数组编写图片无缝向左滚动
2012/12/11 Javascript
jquery 提示信息显示后自动消失的具体实现
2013/12/18 Javascript
JS 实现列表与多选框选择附预览动画
2014/10/29 Javascript
JS实现单行文字不间断向上滚动的方法
2015/01/29 Javascript
jqueryMobile使用示例分享
2016/01/12 Javascript
使用javaScript实现鼠标拖拽事件
2020/04/03 Javascript
vue.js element-ui tree树形控件改iview的方法
2018/03/29 Javascript
AngularJS 多指令Scope问题的解决
2018/10/25 Javascript
Vue3.0 响应式系统源码逐行分析讲解
2019/10/14 Javascript
JS原型对象操作实例分析
2020/06/06 Javascript
vue如何在项目中调用腾讯云的滑动验证码
2020/07/15 Javascript
[05:59]带你看看DPC的台前幕后
2021/03/11 DOTA
Python新手在作用域方面经常容易碰到的问题
2015/04/03 Python
一篇文章读懂Python赋值与拷贝
2018/04/19 Python
浅谈Python中的bs4基础
2018/10/21 Python
彻底理解Python中的yield关键字
2019/04/01 Python
python redis连接 有序集合去重的代码
2019/08/04 Python
Python 使用 PyMysql、DBUtils 创建连接池提升性能
2019/08/14 Python
python3 实现函数写文件路径的正确方法
2019/11/27 Python
Python+Selenium随机生成手机验证码并检查页面上是否弹出重复手机号码提示框
2020/09/21 Python
各大浏览器 CSS3 和 HTML5 兼容速查表 图文
2010/04/01 HTML / CSS
彻底弄明白CSS3的Media Queries(跨平台设计)
2010/07/27 HTML / CSS
HTML5+css3:3D旋转木马效果相册
2017/01/03 HTML / CSS
菲律宾旅游网站:Expedia菲律宾
2017/10/11 全球购物
Perfume’s Club中文官网:西班牙美妆在线零售品牌
2020/08/24 全球购物
顶碗少年教学反思
2014/02/21 职场文书
伊索寓言读书笔记
2015/06/30 职场文书