试图循环遍历每个键,将其附加到列表中,然后遍历它,但它失败了。想知道是否有更好的方法来更新我的字典而不是定义上面的所有变量并逐个更新它?
nfl = dict()
nfl['Tom'] = tom = dict()
nfl['bob'] = bob = dict()
nfl['kara'] = kara = dict()
nfl['Mike'] = mike = dict()
for k in data:
if 'tom_score' in data[k]:
<doing stuff here>
elif 'bob'in k:
bob.update(data[k])
elif 'kara'in k:
kara.update(data[k])
elif 'mike'in k:
mike.update(data[k])
答案 0 :(得分:1)
假设这是一个错字,'Tom'
和'tom_score'
应该是相同的,您可以使用defaultdict
。
from collections import defaultdict
nfl = defaultdict(dict)
for k in data:
if k in ['Tom', 'bob', 'kara', 'Mike']:
nfl[k].update(data[k])
如果您想要拥有if
中的所有名称而不仅仅是指定的名称,则可以跳过data
部分名称检查。