Module Basics

Python modules are easy to create; they’re just files of Python program code, created with your favorite text editor. You don’t need to write special syntax to tell Python you’re making a module; almost any text file will do. Because Python handles all the details of finding and loading modules, modules are also easy to use; clients simply import a module or specific names a module defines and use the objects they reference. Here’s an overview of the basics:

Creating modules: Python files, C extensions

Modules can actually be coded as either Python files or C extensions. We won’t be studying C extensions in this book, but we’ll use a few along the way. Many of Python’s built-in tools are really imported C extension modules; to their clients, they look identical to Python file modules.

Using modules: import, from, reload()

As we’ll see in a moment, clients can load modules with either import or from statements. By calling the reload built-in function, they may also reload a module’s code without stopping programs that use it. Module files can also be run as top-level programs from the system prompt, as we saw in Chapter 1.

Module search path: PYTHONPATH

As we also saw in Chapter 1, Python searches for imported module files by inspecting all directories listed on the PYTHONPATH environment variable. You can store modules anywhere, so long as you add all your source directories to this variable.

Definition

Let’s look at a simple example of module basics in action. To define ...

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.