python查询基于值的字典中的键

python查询基于值的字典中的键,第1张

概述让我们有一个以下的词: table = {x1: {y1: 1, y2:2}, x2: {y1: 3, y2:4}, x3: {y3: 5, y2:6} } 考虑到值是唯一的,有没有办法根据值有效地查询关键路径,或者最好使用值作为关键字来重建字典? 例: result = magic_function(table, 3) result - 让我们有一个以下的词:

table = {x1: {y1: 1,y2:2},x2: {y1: 3,y2:4},x3: {y3: 5,y2:6}         }

考虑到值是唯一的,有没有办法根据值有效地查询关键路径,或者最好使用值作为关键字来重建字典?

例:

result = magic_function(table,3)   result --> [x2,y1]

谢谢,

解决方法 “反转”字典的惯用方法是这样的:

i = {v: k for (k,v) in d.items()}

如果您使用的是Python 2而不是3,而d可能很大,请使用iteritems.

在你的情况下,你有一个dicts的词典,如果我理解正确,你想把它翻译成路径的词组.但你不知道怎么写.所以,让我们从明确的写作开始,漫长的道路:

i = {}for k,v in d.items():    for k2,v2 in v.items():        i[v2] = (k,k2)

你可以把它转换成字典理解,但你希望它是你真正理解的东西,而不是你不经思考地复制和粘贴的魔法调用,所以我会把那部分留给你(但我会很高兴的如果您有任何疑问,请提供帮助).

总结

以上是内存溢出为你收集整理的python查询基于值的字典中的键全部内容,希望文章能够帮你解决python查询基于值的字典中的键所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1192723.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-03
下一篇 2022-06-03

发表评论

登录后才能评论

评论列表(0条)

保存