【发布时间】:2017-01-29 00:01:57
【问题描述】:
我已经搜索了基于值获取关联键的方法,但大多数方法看起来都非常复杂。可能是因为我是 Python 新手,但是有没有一种简单的方法来获取与(最大值)值关联的键?例如:
d = {'one':1, 'two':2, 'three':3, 'four':4, 'five':5}
max(d.values())
会给5。
如何获取与“5”值关联的键?
【问题讨论】:
标签: python dictionary key
我已经搜索了基于值获取关联键的方法,但大多数方法看起来都非常复杂。可能是因为我是 Python 新手,但是有没有一种简单的方法来获取与(最大值)值关联的键?例如:
d = {'one':1, 'two':2, 'three':3, 'four':4, 'five':5}
max(d.values())
会给5。
如何获取与“5”值关联的键?
【问题讨论】:
标签: python dictionary key
您可以遍历字典并保存最高值的键。
import math
max_value = -math.inf # Infinitly small number.
max_value_key = None
for key, value in d.items():
if max_value < value:
max_value = value
max_value_key = key
【讨论】:
max_value_key,您就会看到此方法有效。 maximum = max(d, key=d.get) 不过更好。关键选项是将d 中的每个元素传入的函数。 d 中的元素是键,d.get 将返回每个键的值。所以max(d, key=d.get) 会查看你的字典中哪个键值最大,并给你相应的键。当您执行max(d) 时,您正在查找字典中最大的键,并且由于它们都是字符串,它会为您提供按字母顺序排列的最大字符串。