本文介绍了有没有一个简单的一行内容来访问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的每个元素?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

10-29 16:59