3
我的问题可能有点复杂,但事实上这是事实。我有一个嵌套的字典,看起来像这样:检查列表中的项目是否存在于字典中
dict_a = {'one': {'bird':2, 'tree':6, 'sky':1, 'TOTAL':9},
'two': {'apple':3, 'sky':1, 'TOTAL':4},
'three': {'tree':6, 'TOTAL':6},
'four': {'nada':1, 'TOTAL':1},
'five': {'orange':2, 'bird':3, 'TOTAL':5}
}
和一个列表:
list1 = ['bird','tree']
newlist = []
我怎么能检查的项目在列表1无论是在dict_a的嵌套字典,并追加到newlist?输出应该是这样的:
newlist = ['one','three','five']
因为鸟和树碰巧在嵌套的一,三和五字典中。
我能想到的是:
for s,v in dict_a.items():
for s1,v1 in v.items():
for item in list1:
if item == s1:
newlist.append(s)
@martinpieters不幸的是我得到这个错误ValueError:太多的值来解压缩: – 2013-05-13 09:01:42
@FynnMahoney:我在第一次修改时出错了(忘记调用'dict_a.iteritems()'),所以我们仅仅遍历了键,而不是键和值。对于那个很抱歉。 – 2013-05-13 09:02:29
@martinpieters谢谢! – 2013-05-13 09:30:09