summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRaymond Hettinger <rhettinger@users.noreply.github.com>2017-09-25 08:21:06 (GMT)
committerGitHub <noreply@github.com>2017-09-25 08:21:06 (GMT)
commit49392c63a243052c8013bef80d35202bb6d7c404 (patch)
tree88cc922963f21d36e2992feb3b9d6561dfc2dc52
parent57c2561c8c5663aef55b00e3f29cba575ff36ccd (diff)
downloadcpython-49392c63a243052c8013bef80d35202bb6d7c404.zip
cpython-49392c63a243052c8013bef80d35202bb6d7c404.tar.gz
cpython-49392c63a243052c8013bef80d35202bb6d7c404.tar.bz2
bpo-27385: Clarify docstring for groupby() (#3738)
-rw-r--r--Doc/library/itertools.rst2
-rw-r--r--Modules/itertoolsmodule.c5
2 files changed, 4 insertions, 3 deletions
diff --git a/Doc/library/itertools.rst b/Doc/library/itertools.rst
index 530c29d..fa6c340 100644
--- a/Doc/library/itertools.rst
+++ b/Doc/library/itertools.rst
@@ -53,7 +53,7 @@ Iterator Arguments Results
:func:`compress` data, selectors (d[0] if s[0]), (d[1] if s[1]), ... ``compress('ABCDEF', [1,0,1,0,1,1]) --> A C E F``
:func:`dropwhile` pred, seq seq[n], seq[n+1], starting when pred fails ``dropwhile(lambda x: x<5, [1,4,6,4,1]) --> 6 4 1``
:func:`filterfalse` pred, seq elements of seq where pred(elem) is false ``filterfalse(lambda x: x%2, range(10)) --> 0 2 4 6 8``
-:func:`groupby` iterable[, keyfunc] sub-iterators grouped by value of keyfunc(v)
+:func:`groupby` iterable[, key] sub-iterators grouped by value of key(v)
:func:`islice` seq, [start,] stop [, step] elements from seq[start:stop:step] ``islice('ABCDEFG', 2, None) --> C D E F G``
:func:`starmap` func, seq func(\*seq[0]), func(\*seq[1]), ... ``starmap(pow, [(2,5), (3,2), (10,3)]) --> 32 9 1000``
:func:`takewhile` pred, seq seq[0], seq[1], until pred fails ``takewhile(lambda x: x<5, [1,4,6,4,1]) --> 1 4``
diff --git a/Modules/itertoolsmodule.c b/Modules/itertoolsmodule.c
index 2ac5ab2..cc9895a 100644
--- a/Modules/itertoolsmodule.c
+++ b/Modules/itertoolsmodule.c
@@ -176,8 +176,9 @@ static PyMethodDef groupby_methods[] = {
};
PyDoc_STRVAR(groupby_doc,
-"groupby(iterable[, keyfunc]) -> create an iterator which returns\n\
-(key, sub-iterator) grouped by each value of key(value).\n");
+"groupby(iterable, key=None) -> make an iterator that returns consecutive\n\
+keys and groups from the iterable. If the key function is not specified or\n\
+is None, the element itself is used for grouping.\n");
static PyTypeObject groupby_type = {
PyVarObject_HEAD_INIT(NULL, 0)