这个`key = func`部分在Python中的`max(a,b,c,key = func)`是什么意思?

时间:2017-01-19 15:26:20

标签: python python-3.x max built-in

key=func部分在max(a,b,c,key=func) https://docs.python.org/2/library/functions.html#min中的含义是什么?

我知道这个函数在Python中是如何工作的。但通常我认为它只是简单地使用 z = max(a, b, c) 但在Python文档中,我发现了这部分,我不明白。这是该函数的一些附加可选功能还是什么?

1 个答案:

答案 0 :(得分:4)

它允许定义一个替换元素之间<比较的标准。

例如:

>>>l = ["hhfhfhh","xx","123455676883"]
>>>max(l, key=len)
'123455676883'

返回列表中最长的字符串"123455676883"

没有它,它将返回"xx",因为根据字符串比较它是排名最高的字符串。

>>>l = ["hhfhfhh","xx","123455676883"]
>>>max(l)
'xx'