我想基于同一词典中的另一个值从词典中检索某个值。 这是我的代码 逻辑是如果b == 5,那么我想在相同级别的字典中检索“ a”的值,应该为4。
dic = {'main':
{'second_level':{
'third_level_1':{
'fourth_level_1':{'a':1, 'b':2, 'c':3},
'fourth_level_2':{'a':4, 'b':5, 'c':6}
},
'third_level_2':{
'fourth_level_1':{'a':7, 'b':8, 'c':9},
'fourth_level_2':{'a':14, 'b':15, 'c':16}
}
}
}
}
for key,value in dic['main']['second_level']['third_level_1']['fourth_level_2'].items():
if value == 5:
print(value of a?)
答案 0 :(得分:1)
for p_id, p_info in dic['main']['second_level']['third_level_1'].items():
for key in p_info:
if key=='b' and p_info[key]==5:
print(p_info['a'])
在您的代码中,迭代是在four_level_2上执行的,因此不可能访问four_level_2 ['a']。我正在third_level_1上执行迭代,因此可以访问fourth_level_2 ['a'],它给出4作为答案。