使用列表中的项目作为字典键

时间:2014-02-09 20:27:45

标签: python list python-3.x dictionary

所以我有一本名为'useraccounts'的字典。我设法通过执行以下操作获取第12类中字典中项目的所有键:

found = ([k for k in useraccounts if useraccounts[k]['class'] == '12'])

返回的列表是:

['bob', 'terry'] 

这是正确的。无论如何我现在可以将这些结果作为键,然后单独使用它们来单独打印字典中的相关信息。例如,让程序打印结果:

useraccounts[THE_KEYS_FOUND_IN_THE_LIST]['totalscore']

非常感谢任何帮助。

提前致谢。

3 个答案:

答案 0 :(得分:1)

我想你想要这样的东西:

for name in found:
    print(name, useraccounts[name]['totalscore'])

答案 1 :(得分:0)

你可以建立你以前的基础:

scores = [useraccounts[k]['totalscore'] for k in useraccounts if useraccounts[k]['class'] == '12']
# scores = [ list of scores ]

答案 2 :(得分:0)

如果您只想要这些特定键的totalscore:

totals = [(key,value['totalscore') for key, value in useraccounts.items() if value['class'] == '12']