summaryrefslogtreecommitdiffstats
path: root/Doc/library/itertools.rst
diff options
context:
space:
mode:
Diffstat (limited to 'Doc/library/itertools.rst')
-rw-r--r--Doc/library/itertools.rst12
1 files changed, 6 insertions, 6 deletions
diff --git a/Doc/library/itertools.rst b/Doc/library/itertools.rst
index b3a0a5f..a3f403a 100644
--- a/Doc/library/itertools.rst
+++ b/Doc/library/itertools.rst
@@ -691,6 +691,12 @@ Itertools Recipes
This section shows recipes for creating an extended toolset using the existing
itertools as building blocks.
+Substantially all of these recipes and many, many others can be installed from
+the `more-itertools project <https://pypi.org/project/more-itertools/>`_ found
+on the Python Package Index::
+
+ pip install more-itertools
+
The extended tools offer the same high performance as the underlying toolset.
The superior memory performance is kept by processing elements one at a time
rather than bringing the whole iterable into memory all at once. Code volume is
@@ -913,9 +919,3 @@ which incur interpreter overhead.
result.append(pool[-1-n])
return tuple(result)
-Note, many of the above recipes can be optimized by replacing global lookups
-with local variables defined as default values. For example, the
-*dotproduct* recipe can be written as::
-
- def dotproduct(vec1, vec2, sum=sum, map=map, mul=operator.mul):
- return sum(map(mul, vec1, vec2))