Python 获取具有最高属性值的嵌套字典的键

A. *_*ijk 2 python dictionary

我有个问题。在我的代码中,我有以下字典:

{1: {'amount': 40.0, 'quantity': 0}, 2: {'amount': 40.0, 'quantity': 0}, 3: {'amount': 40.0, 'quantity': 0}, 4: {'amount': 40.0, 'quantity': 0}, 5: {'amount': 41, 'quantity': 0}, 6: {'amount': 40.0, 'quantity': 0}, 7: {'amount': 40.0, 'quantity': 0}, 8: {'amount': 40.0, 'quantity': 0}, 9: {'amount': 40.0, 'quantity': 0}, 10: {'amount': 40.0, 'quantity': 0}}
Run Code Online (Sandbox Code Playgroud)

从这本字典中,我需要获取最大的内部字典的键amount。就我而言,应该是5。我发现了很多类似的事情,但没有找到关于嵌套字典的信息。

我想出了这样的事情:

max(int(i['amount']) for i in dict.values())
Run Code Online (Sandbox Code Playgroud)

但这个回报最高amount。我需要用 that 返回该字典的键amount。我怎样才能实现我想要的?

Bro*_*ark 6

您可以找到字典键中的最大值,根据自定义键参数进行比较,该参数检索与该键对应的金额:

result = max(data.keys(), key=lambda x: data[x]['amount'])

print(result)
Run Code Online (Sandbox Code Playgroud)