scores = {5: 35044.51299744237, 25: 29016.41319191076, 50: 27405.930473214907, 100: 27282.50803885739, 250: 27893.822225701646, 500: 29454.18598068598}
分数是我定义的字典,现在我想找出字典中最小值的键,应该返回100。
我注意到可以这样做
min(scores, key=scores.get)
但是我不太明白上面的意思。我是python编程的新手。谁能在视觉上为我分解这条线?任何帮助将不胜感激。
答案 0 :(得分:1)
摘自Patrick所提供的docs
key参数的值应该是一个带有单个参数并返回用于排序目的键的函数。
因此,基本上将scores.get
用作键函数会为得分中的每个键调用scores.get(key)
。
将分数作为最小数据传递时,它基本上将其视为键列表,因此从本质上讲,它会找到最小值并返回关联的键。
答案 1 :(得分:0)
也许更简单:调用min(scores)
时,您将返回scores
中scores
中所有项目中具有最低值的项目。
调用min(scores, key=some_func)
时,您将返回scores
中具有最低值some_func(item)
的项目。
例如,如果scores
是(唯一)整数的列表,则min(scores)
将返回最低的整数。如果some_func(x)
返回x
的负数,则min(scores, key=some_func)
将返回最大值。