next up previous contents
Next: ``Compiled'' Python files Up: The Interpreter and Previous: Error Handling

The Module Search Path

When a module named spam is imported, the interpreter searches for a file named spam.py in the list of directories specified by the environment variable PYTHONPATH. It has the same syntax as the Unix shell variable PATH, i.e., a list of colon-separated directory names. When PYTHONPATH is not set, or when the file is not found there, the search continues in an installation-dependent default path, usually .:/usr/local/lib/python.

Actually, modules are searched in the list of directories given by the variable sys.path which is initialized from PYTHONPATH and the installation-dependent default. This allows Python programs that know what they're doing to modify or replace the module search path. See the section on Standard Modules later.



guido@cwi.nl