本文介绍了有没有一个简单的一行内容来访问Python中嵌套的dictioanry的每个元素?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我经常在Python 2.7中使用3或更多层的嵌套字典,并使用嵌套的for循环结构(如下所示)来访问每个元素。有没有人知道一个更简单,更干净或更快的方法呢? 在mydict中的foo:
为酒吧在mydict [foo]中:
for mydict [foo] [bar]:
mydict [foo] [bar] [etc] =value
非常感谢提前
Tom
解决方案
您正在使用密钥来访问值。如何使用代替?
for foo in mydict.itervalues():
for bar in foo.itervalues():
在bar中的等:#迭代字典产生键
bar [etc] =value
I often use nested dictionaries in Python 2.7 with 3 or more tiers and use a nested for loop structure, as shown below, to access each element. does anyone know of a simpler, neater or faster method to do so?
for foo in mydict:
for bar in mydict[foo]:
for etc in mydict[foo][bar]:
mydict[foo][bar][etc] = "value"
many thanks in advance
Tom
解决方案
You're using keys to access values. How about using dict.itervalues()
instead?
for foo in mydict.itervalues():
for bar in foo.itervalues():
for etc in bar: # Iterating a dictionary yields keys
bar[etc] = "value"
这篇关于有没有一个简单的一行内容来访问Python中嵌套的dictioanry的每个元素?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!