Fix docstrings for itertools combinatoric functions.
diff --git a/Doc/library/itertools.rst b/Doc/library/itertools.rst
index bf69e21..87e99d0 100644
--- a/Doc/library/itertools.rst
+++ b/Doc/library/itertools.rst
@@ -70,7 +70,7 @@
============================================== ==================== =============================================================
:func:`product` p, q, ... [repeat=1] cartesian product, equivalent to a nested for-loop
:func:`permutations` p[, r] r-length tuples, all possible orderings, no repeated elements
-:func:`combinations` p[, r] r-length tuples, in sorted order, no repeated elements
+:func:`combinations` p, r r-length tuples, in sorted order, no repeated elements
|
``product('ABCD', repeat=2)`` ``AA AB AC AD BA BB BC BD CA CB CC CD DA DB DC DD``
``permutations('ABCD', 2)`` ``AB AC AD BA BC BD CA CB CD DA DB DC``
diff --git a/Modules/itertoolsmodule.c b/Modules/itertoolsmodule.c
index a844c93..dc8a92a 100644
--- a/Modules/itertoolsmodule.c
+++ b/Modules/itertoolsmodule.c
@@ -2194,7 +2194,7 @@
}
PyDoc_STRVAR(combinations_doc,
-"combinations(iterable[, r]) --> combinations object\n\
+"combinations(iterable, r) --> combinations object\n\
\n\
Return successive r-length combinations of elements in the iterable.\n\n\
combinations(range(4), 3) --> (0,1,2), (0,1,3), (0,2,3), (1,2,3)");
@@ -3542,6 +3542,11 @@
takewhile(pred, seq) --> seq[0], seq[1], until pred fails\n\
dropwhile(pred, seq) --> seq[n], seq[n+1], starting when pred fails\n\
groupby(iterable[, keyfunc]) --> sub-iterators grouped by value of keyfunc(v)\n\
+\n\
+Combinatoric generators:\n\
+product(p, q, ... [repeat=1]) --> cartesian product\n\
+permutations(p[, r])\n\
+combinations(p, r)\n\
");