In the prior chapter we met Python’s two looping statements,
for. Although they can handle most repetitive
tasks programs need to perform, the need to iterate over sequences is so
common and pervasive that Python provides additional tools to make it
simpler and more efficient. This chapter begins our exploration of these
tools. Specifically, it presents the related concepts of Python’s
iteration protocol—a method-call model used by
for loop—and fills in some
details on list comprehensions—a close cousin to
for loop that applies an
expression to items in an iterable.
Because both of these tools are related to both the
for loop and functions, we’ll take a two-pass
approach to covering them in this book: this chapter introduces the
basics in the context of looping tools, serving as something of
continuation of the prior chapter, and a later chapter (Chapter 20) revisits them in
the context of function-based tools. In this chapter, we’ll also sample
additional iteration tools in Python and touch on the new iterators
available in Python 3.0.
One note up front: some of the concepts presented in these chapters may seem advanced at first glance. With practice, though, you’ll find that these tools are useful and powerful. Although never strictly required, because they’ve become commonplace in Python code, a basic understanding can also help if you must read programs written by others.
In the preceding ...