如果有多个最大项,则该函数返回遇到的第一个项。这与其他排序稳定性保存工具(例如sorted(iterable, key=keyfunc, reverse=True)[0]
和)一致heapq.nlargest(1, iterable, key=keyfunc)
。
在源代码中实现此方法中./Python/bltinmodule.c
通过builtin_max
,它包装在更一般的min_max
功能。
min_max
将遍历这些值并用于PyObject_RichCompareBool
查看它们是否大于当前值。如果是这样,则较大的值将替换它。相等的值将被跳过。
结果是在平局的情况下将选择第一个最大值。