From e22072fb11246f125aa9ff7629c832b9e2407ef0 Mon Sep 17 00:00:00 2001 From: Alexander Marshalov <_@marshalov.org> Date: Tue, 24 Jul 2018 10:58:21 +0700 Subject: bpo-34149: Behavior of the min/max with key=None (GH-8328) Improve consistency with the signature for sorted(), heapq.nsmallest(), heapq.nlargest(), and itertools.groupby(). --- Lib/heapq.py | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) (limited to 'Lib/heapq.py') diff --git a/Lib/heapq.py b/Lib/heapq.py index b31f4186cf..0e3555cf91 100644 --- a/Lib/heapq.py +++ b/Lib/heapq.py @@ -468,10 +468,7 @@ def nsmallest(n, iterable, key=None): if n == 1: it = iter(iterable) sentinel = object() - if key is None: - result = min(it, default=sentinel) - else: - result = min(it, default=sentinel, key=key) + result = min(it, default=sentinel, key=key) return [] if result is sentinel else [result] # When n>=size, it's faster to use sorted() @@ -531,10 +528,7 @@ def nlargest(n, iterable, key=None): if n == 1: it = iter(iterable) sentinel = object() - if key is None: - result = max(it, default=sentinel) - else: - result = max(it, default=sentinel, key=key) + result = max(it, default=sentinel, key=key) return [] if result is sentinel else [result] # When n>=size, it's faster to use sorted() -- cgit v1.2.1