【发布时间】:2019-01-27 19:58:30
【问题描述】:
尝试在嵌套字典中查找最大值,但显示不可散列类型:'dict_keys'错误
假设我有这本字典:
d = {'A': {'a':2, 'b':2, 'c':0},
'B': {'a':2, 'b':0, 'c':1}}
我希望代码返回包含字典中最大值的所有键(即字典 A 中的最大值为 2,并且我希望代码返回相应的键:'a' 和' b')
['a','b']
这是我写的代码:
max_value = max(d[Capital_Alph].values()))
return [key for key, value in d[Capital_Alph].items()
if value == max_value]
【问题讨论】:
-
return只在函数中有意义。你的代码没有。请修正您的代码,使其成为完整的minimal reproducible example。 -
字典的值是字典。比较它们是没有意义的
-
max(d[Capital_Alph].values()))有两个左括号,但有三个右括号 -> 如果不是 good general advice,请注意 Patrick Artners's prompt。
标签: python python-3.x