Chapter 5. Modules
This chapter presents the Python module—the highest-level program organization unit, which packages program code and data for reuse. In concrete terms, modules take the form of Python program files (and C extensions); clients import modules to use the names they define. Modules are processed with two new statements and one important built-in function we explore here:
-
import
Lets a client fetch a module as a whole
-
from
Allows clients to fetch particular names from a module
-
reload
Provides a way to reload a module’s code without stopping Python
We introduced module basics in Chapter 1, and you may have been using module files in the exercises, so some of this chapter may be a review. But we also flesh out module details we’ve omitted so far: reloads, module compilation semantics, and so on. Because modules and classes are really just glorified namespaces, we explore namespace basics here as well, so be sure to read most of this chapter before tackling the next.
Why Use Modules?
Let’s start with the obvious first question: why should we care about modules? The short answer is that they provide an easy way to organize components into a system. But from an abstract perspective, modules have at least three roles:
Get Learning Python now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.