Using the finite iterators
The itertools module provides a number of functions that we can use to produce finite sequences of values. We'll look at ten functions in this module, plus some related built-in functions:
- enumerate(): This function is actually part of the- __builtins__package, but it works with an iterator and is very similar to other functions in the- itertoolsmodule.
- accumulate(): This function returns a sequence of reductions of the input iterable. It's a higher-order function and can do a variety of clever calculations.
- chain(): This function combines multiple iterables serially.
- groupby(): This function uses a function to decompose a single iterable into a sequence of iterables over subsets of the input data.
- zip_longest(): This function combines elements from multiple iterables. The built-in- zip()function truncates the sequence at the length of the shortest iterable. The- zip_longest()function pads the shorter iterables with the given fillvalue.
- compress(): This function...
 
                                             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
     
         
        