Update itertools docs (GH-15114) (GH-15118)
* Remove suggestion that is less relevant now that global lookups are much faster
* Add link for installing the recipes
(cherry picked from commit adf02b36b3
)
Co-authored-by: Raymond Hettinger <rhettinger@users.noreply.github.com>
This commit is contained in:
parent
0c16f6b307
commit
fc6e3bc1cd
|
@ -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))
|
||||
|
|
Loading…
Reference in New Issue