Chapter 7. Modules
A
typical Python program is made up of several source files. Each
source file corresponds to a module
, which
packages program code and data for reuse. Modules are normally
independent of each other so that other programs can reuse the
specific modules they need. A module explicitly establishes
dependencies upon another module by using import
or from
statements. In some other programming
languages, global variables can provide a hidden conduit for coupling
between modules. In Python, however, global variables are not global
to all modules, but instead such variables are attributes of a single
module object. Thus, Python modules communicate in explicit and
maintainable ways.
Python also
supports extensions
, which are components
written in other languages, such as C, C++, or Java, for use with
Python. Extensions are seen as modules by the Python code that uses
them (called client code). From the client code viewpoint, it does
not matter whether a module is 100% pure Python or an extension. You
can always start by coding a module in Python. Later, if you need
better performance, you can recode some modules in a lower-level
language without changing the client code that uses the modules.
Chapter 24 and Chapter 25 discuss writing extensions in C and Java.
This chapter discusses module creation and loading. It also covers
grouping modules into packages
, which are modules that contain other modules, forming a hierarchical, tree-like structure. Finally, the chapter discusses ...
Get Python in a Nutshell 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.