Summary
In this chapter, we explored the concept of iteration and generation a bit more deeply. We saw the map
, zip
and filter
functions quite in detail, and how to use them as an alternative to a regular for
loop approach.
Then we saw the concept of comprehensions, for lists, dictionaries, and sets. We saw their syntax and how to use them as an alternative to both the classic for
loop approach and also to the use of map
, zip
, and filter
functions.
Finally, we talked about the concept of generation, in two forms: generator functions and expressions. We learned how to save time and space by using generation techniques and saw how they can make possible what wouldn't normally be if we used a conventional approach based on lists.
We talked about performances, and saw that for
loops are last in terms of speed, but they provide the best readability and flexibility to change. On the other hand, functions such as map
and filter
can be much faster, and comprehensions may be even better.
The complexity...