在字典值Python中访问字典

时间:2018-06-21 17:48:15

标签: python dictionary

tmpDict = {'ONE':{'TWO':{'THREE':10}}}

从此字典中,如何打印值10?这类似于先前提出的问题,但是他们想知道如何添加更多值。

2 个答案:

答案 0 :(得分:2)

print(tmpDict['ONE']['TWO']["THREE"])

这是所有键的通用解决方案:

all_values = [tmpDict[i][j][k] for i in tmpDict.keys() for j in tmpDict[i].keys() for k in tmpDict[i][j].keys()]
print(all_values)

答案 1 :(得分:0)

一般来说,您可以通过以下方式在Python3中导航嵌套词典d是您的字典):

def traverse_nested_dict(d, parent_key='root'):
    """ Traverse dictionary and print keys and values
        :param d: a dictionary"""
    for key, value in d.items():
        current_key = parent_key+'.'+key
        if type(value) is dict:
            traverse_nested_dict(value, parent_key=current_key)
        else:
            print(f'{current_key} -> {value}')

例如:

my_dict = {'a': {'b': 3, 'c': {'d': 5}}}
traverse_nested_dict(my_dict)

将产生以下输出:

root.a.b -> 3
root.a.c.d -> 5

使用您的输入

tmpDict = {'ONE':{'TWO':{'THREE':10}}}
traverse_nested_dict(tmpDict)

您将获得:

root.ONE.TWO.THREE -> 10
相关问题