从dict的python dict中获取最大值

时间:2017-04-06 06:16:49

标签: python-3.x

我有一本字典词典 z = {'a' : {'p' : 5, 'q' : 7}, 'b' : {'p' : 9, 'm' : 8}, 'c' : {'p' : 7},'d' : {'n' : 9, 'm' : 9}}

我必须从dict的dict中获取最大值并将其分配给键。

输出应为: z = {'a' : {'q' : 7}, 'b' : {'p' : 9}, 'd' : {'n' : 9, 'm' : 9}}

我是Python新手。提前谢谢。

1 个答案:

答案 0 :(得分:0)

以下与口译员的会话应该向您展示一种方法来实现您的目标:

Python 3.6.0 (v3.6.0:41df79263a11, Dec 23 2016, 08:06:12) [MSC v.1900 64 bit (AMD64)] on win32
Type "copyright", "credits" or "license()" for more information.
>>> z = {'a': {'p': 5, 'q': 7}, 'b': {'p': 9, 'm': 8}, 'c': {'p': 7}, 'd': {'n': 9, 'm': 9}}
>>> z = {key_a: {key_b: value_b for key_b, value_b in value_a.items() if value_b == max(value_a.values())} for key_a, value_a in z.items()}
>>> z
{'a': {'q': 7}, 'b': {'p': 9}, 'c': {'p': 7}, 'd': {'n': 9, 'm': 9}}
>>>