首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >反转/反转字典映射

反转/反转字典映射
EN

Stack Overflow用户
提问于 2009-01-27 22:46:10
回答 30查看 589.6K关注 0票数 840

给定一个字典,如下所示:

my_map = {'a': 1, 'b': 2}

如何反转这张地图才能得到:

inv_map = {1: 'a', 2: 'b'}
EN

回答 30

Stack Overflow用户

回答已采纳

发布于 2009-01-27 15:24:57

Python 3+:

inv_map = {v: k for k, v in my_map.items()}

Python 2:

inv_map = {v: k for k, v in my_map.iteritems()}
票数 1.3K
EN

Stack Overflow用户

发布于 2009-01-27 22:50:23

假设dict中的值是唯一的:

dict((v, k) for k, v in my_map.iteritems())
票数 184
EN

Stack Overflow用户

发布于 2009-01-28 05:33:26

中的值

并不是唯一的:

inv_map = {}
for k, v in my_map.iteritems():
    inv_map[v] = inv_map.get(v, []) + [k]
票数 164
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/483666

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档