From 476a31ef1e188d30a04629616b30e89758850303 Mon Sep 17 00:00:00 2001 From: Raymond Hettinger Date: Tue, 14 Sep 2010 23:13:42 +0000 Subject: [PATCH] Issue 9802: Document min()/max() sort stability --- Doc/library/functions.rst | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/Doc/library/functions.rst b/Doc/library/functions.rst index 46f419e1c4..4f1c91ca08 100644 --- a/Doc/library/functions.rst +++ b/Doc/library/functions.rst @@ -634,6 +634,10 @@ are always available. They are listed here in alphabetical order. The optional keyword-only *key* argument specifies a one-argument ordering function like that used for :meth:`list.sort`. + If multiple items are maximal, the function returns the first one encountered. + This is consistent with other sort-stability preserving tools such as + ``sorted(iterable, key=keyfunc, reverse=True)[0]` and + ``heapq.nlargest(1, iterable, key=keyfunc)``. .. function:: memoryview(obj) :noindex: @@ -651,6 +655,10 @@ are always available. They are listed here in alphabetical order. The optional keyword-only *key* argument specifies a one-argument ordering function like that used for :meth:`list.sort`. + If multiple items are minimal, the function returns the first one encountered. + This is consistent with other sort-stability preserving tools such as + ``sorted(iterable, key=keyfunc)[0]` and + ``heapq.nsmallest(1, iterable, key=keyfunc)``. .. function:: next(iterator[, default]) -- 2.40.0