From 9b14083497f50213f908c1359eeaf47c97161347 Mon Sep 17 00:00:00 2001 From: Sergey B Kirpichev Date: Tue, 29 Oct 2024 11:08:08 +0300 Subject: [PATCH] Align functools.reduce() docstring with PEP-257 (#126045) Yak-shave in preparation for Argument Clinic adaption in gh-125999. --- Lib/functools.py | 14 ++++++++------ Modules/_functoolsmodule.c | 14 ++++++++------ 2 files changed, 16 insertions(+), 12 deletions(-) diff --git a/Lib/functools.py b/Lib/functools.py index 9d53d360155..27abd622a8c 100644 --- a/Lib/functools.py +++ b/Lib/functools.py @@ -238,12 +238,14 @@ def reduce(function, sequence, initial=_initial_missing): """ reduce(function, iterable[, initial], /) -> value - Apply a function of two arguments cumulatively to the items of a sequence - or iterable, from left to right, so as to reduce the iterable to a single - value. For example, reduce(lambda x, y: x+y, [1, 2, 3, 4, 5]) calculates - ((((1+2)+3)+4)+5). If initial is present, it is placed before the items - of the iterable in the calculation, and serves as a default when the - iterable is empty. + Apply a function of two arguments cumulatively to the items of an iterable, from left to right. + + This effectively reduces the iterable to a single value. If initial is present, + it is placed before the items of the iterable in the calculation, and serves as + a default when the iterable is empty. + + For example, reduce(lambda x, y: x+y, [1, 2, 3, 4, 5]) + calculates ((((1 + 2) + 3) + 4) + 5). """ it = iter(sequence) diff --git a/Modules/_functoolsmodule.c b/Modules/_functoolsmodule.c index 802b1cf792c..da4e088e546 100644 --- a/Modules/_functoolsmodule.c +++ b/Modules/_functoolsmodule.c @@ -1009,12 +1009,14 @@ Fail: PyDoc_STRVAR(functools_reduce_doc, "reduce(function, iterable[, initial], /) -> value\n\ \n\ -Apply a function of two arguments cumulatively to the items of a sequence\n\ -or iterable, from left to right, so as to reduce the iterable to a single\n\ -value. For example, reduce(lambda x, y: x+y, [1, 2, 3, 4, 5]) calculates\n\ -((((1+2)+3)+4)+5). If initial is present, it is placed before the items\n\ -of the iterable in the calculation, and serves as a default when the\n\ -iterable is empty."); +Apply a function of two arguments cumulatively to the items of an iterable, from left to right.\n\ +\n\ +This effectively reduces the iterable to a single value. If initial is present,\n\ +it is placed before the items of the iterable in the calculation, and serves as\n\ +a default when the iterable is empty.\n\ +\n\ +For example, reduce(lambda x, y: x+y, [1, 2, 3, 4, 5])\n\ +calculates ((((1 + 2) + 3) + 4) + 5)."); /* lru_cache object **********************************************************/