Python Module Internal Representation and Introspection

From NovaOrdis Knowledge Base
Revision as of 02:28, 4 January 2023 by Ovidiu (talk | contribs) (→‎__file__)
Jump to navigation Jump to search

Internal

Overview

The module Class

All module and package instances are represented internally as instances of the module

Attributes

__file__

Once imported, the file associated with the module can be determined using the module object's __file__ attribute:

import mymodule
[...]
print(mymodule.__file__)

The directory portion of __file__ should be one of the directories in sys.path.

__path__

The __path__ attribute exists only for module instances that represent packages, not for those instances that represent ordinary modules. __path__ contains the path of the package root directory, where the component modules, subpackages, __init__.py and __main__.py live.