Modules allow the organization of Python code into sharable files. A module is a Python file with a .py extension that contains definitions and statements. The module's contents can be imported into other modules using the import statement. Modules can contain functions, variables, classes and other code that can then be accessed using the module name. Modules are searched for using the module search path which includes the current directory and directories specified in PYTHONPATH.