Back to module index
Go to module by name
importlib
importlib.machinery
The machinery of importlib: finders, loaders, hooks, etc.
Classes
BuiltinImporter
Meta path import for built-in modules.
All methods are either class or static methods to avoid the need to
instantiate the class.
create_module(spec)
Create a built-in module
exec_module(module)
Exec a built-in module
find_module(fullname, path=None)
Find the built-in module.
If 'path' is ever specified then the search is considered a failure.
This method is deprecated. Use find_spec() instead.
find_spec(fullname, path=None, target=None)
get_code(fullname)
Return None as built-in modules do not have code objects.
get_source(fullname)
Return None as built-in modules do not have source code.
is_package(fullname)
Return False as built-in modules are never packages.
_load_module_shim(fullname)
Load the specified module into sys.modules and return it.
This method is deprecated. Use loader.exec_module() instead.
module_repr(module)
Return repr for the module.
The method is deprecated. The import machinery does the job itself.
ExtensionFileLoader
Loader for extension modules.
The constructor is designed to work with FileFinder.
create_module(self, spec)
Create an unitialized extension module
exec_module(self, module)
Initialize an extension module
get_code(self, fullname)
Return None as an extension module cannot create a code object.
get_data(self, path)
Return the data from path as raw bytes.
get_filename(self, name=None, *args, **kwargs)
Return the path to the source file as found by the finder.
get_resource_reader(self, name=None, *args, **kwargs)
get_source(self, fullname)
Return None as extension modules have no source code.
is_package(self, fullname)
Return True if the extension module is a package.
load_module(self, name=None, *args, **kwargs)
Load a module from a file.
This method is deprecated. Use exec_module() instead.
FileFinder
File-based finder.
Interactions with the file system are cached for performance, being
refreshed when the directory the finder is handling has been modified.
find_loader(self, fullname)
Try to find a loader for the specified module, or the namespace
package portions. Returns (loader, list-of-portions).
This method is deprecated. Use find_spec() instead.
_find_module_shim(self, fullname)
Try to find a loader for the specified module by delegating to
self.find_loader().
This method is deprecated in favor of finder.find_spec().
find_spec(self, fullname, target=None)
Try to find a spec for the specified module.
Returns the matching spec, or None if not found.
invalidate_caches(self)
Invalidate the directory mtime.
path_hook(*loader_details)
A class method which returns a closure to use on sys.path_hook
which will return an instance using the specified loaders and the path
called on the closure.
If the path called on the closure is not a directory, ImportError is
raised.
FrozenImporter
Meta path import for frozen modules.
All methods are either class or static methods to avoid the need to
instantiate the class.
create_module(spec)
Use default semantics for module creation.
exec_module(module)
find_module(fullname, path=None)
Find a frozen module.
This method is deprecated. Use find_spec() instead.
find_spec(fullname, path=None, target=None)
get_code(fullname)
Return the code object for the frozen module.
get_source(fullname)
Return None as frozen modules do not have source code.
is_package(fullname)
Return True if the frozen module is a package.
load_module(fullname)
Load a frozen module.
This method is deprecated. Use exec_module() instead.
module_repr(m)
Return repr for the module.
The method is deprecated. The import machinery does the job itself.
ModuleSpec
The specification for a module, used for loading.
A module's spec is the source for information about the module. For
data associated with the module, including source, use the spec's
loader.
`name` is the absolute name of the module. `loader` is the loader
to use when loading the module. `parent` is the name of the
package the module is in. The parent is derived from the name.
`is_package` determines if the module is considered a package or
not. On modules this is reflected by the `__path__` attribute.
`origin` is the specific location used by the loader from which to
load the module, if that information is available. When filename is
set, origin will match.
`has_location` indicates that a spec's "origin" reflects a location.
When this is True, `__file__` attribute of the module is set.
`cached` is the location of the cached bytecode file, if any. It
corresponds to the `__cached__` attribute.
`submodule_search_locations` is the sequence of path entries to
search when importing submodules. If set, is_package should be
True--and False otherwise.
Packages are simply modules that (may) have submodules. If a spec
has a non-None value in `submodule_search_locations`, the import
system will consider modules loaded from the spec as packages.
Only finders (see importlib.abc.MetaPathFinder and
importlib.abc.PathEntryFinder) should modify ModuleSpec instances.
cached = <property object at 0x7f75e3cb9440>
has_location = <property object at 0x7f75e3cb94e0>
parent = <property object at 0x7f75e3cb9350>
The name of the module's parent.
PathFinder
Meta path finder for sys.path and package __path__ attributes.
find_distributions(*args, **kwargs)
Find distributions.
Return an iterable of all Distribution instances capable of
loading the metadata for packages matching ``context.name``
(or all names if ``None`` indicated) along the paths in the list
of directories ``context.path``.
find_module(fullname, path=None)
find the module on sys.path or 'path' based on sys.path_hooks and
sys.path_importer_cache.
This method is deprecated. Use find_spec() instead.
find_spec(fullname, path=None, target=None)
Try to find a spec for 'fullname' on sys.path or 'path'.
The search is based on sys.path_hooks and sys.path_importer_cache.
invalidate_caches()
Call the invalidate_caches() method on all path entry finders
stored in sys.path_importer_caches (where implemented).
SourceFileLoader
Concrete implementation of SourceLoader using the file system.
create_module(self, spec)
Use default semantics for module creation.
exec_module(self, module)
Execute the module.
get_code(self, fullname)
Concrete implementation of InspectLoader.get_code.
Reading of bytecode requires path_stats to be implemented. To write
bytecode, set_data must also be implemented.
get_data(self, path)
Return the data from path as raw bytes.
get_filename(self, name=None, *args, **kwargs)
Return the path to the source file as found by the finder.
get_resource_reader(self, name=None, *args, **kwargs)
get_source(self, fullname)
Concrete implementation of InspectLoader.get_source.
is_package(self, fullname)
Concrete implementation of InspectLoader.is_package by checking if
the path returned by get_filename has a filename of '__init__.py'.
load_module(self, name=None, *args, **kwargs)
Load a module from a file.
This method is deprecated. Use exec_module() instead.
path_mtime(self, path)
Optional method that returns the modification time (an int) for the
specified path (a str).
Raises OSError when the path cannot be handled.
path_stats(self, path)
Return the metadata for the path.
set_data(self, path, data, *, _mode=438)
Write bytes data to a file.
source_to_code(self, data, path, *, _optimize=-1)
Return the code object compiled from source.
The 'data' argument can be any object type that compile() supports.
SourcelessFileLoader
Loader which handles sourceless file imports.
create_module(self, spec)
Use default semantics for module creation.
exec_module(self, module)
Execute the module.
get_code(self, fullname)
get_data(self, path)
Return the data from path as raw bytes.
get_filename(self, name=None, *args, **kwargs)
Return the path to the source file as found by the finder.
get_resource_reader(self, name=None, *args, **kwargs)
get_source(self, fullname)
Return None as there is no source code.
is_package(self, fullname)
Concrete implementation of InspectLoader.is_package by checking if
the path returned by get_filename has a filename of '__init__.py'.
load_module(self, name=None, *args, **kwargs)
Load a module from a file.
This method is deprecated. Use exec_module() instead.
WindowsRegistryFinder
Meta path finder for modules declared in the Windows registry.
find_module(fullname, path=None)
Find module named in the registry.
This method is deprecated. Use find_spec() instead.
find_spec(fullname, path=None, target=None)
DEBUG_BUILD = False
REGISTRY_KEY = 'Software\\Python\\PythonCore\\{sys_version}\\Modules\\{fullname}'
REGISTRY_KEY_DEBUG = 'Software\\Python\\PythonCore\\{sys_version}\\Modules\\{fullname}\\Debug'
Functions
all_suffixes
all_suffixes()
Returns a list of all recognized module suffixes for this process
Other members
BYTECODE_SUFFIXES = ['.pyc']
DEBUG_BYTECODE_SUFFIXES = ['.pyc']
EXTENSION_SUFFIXES = ['.cpython-310-x86_64-linux-gnu.so', '.abi3.so', '.so']
OPTIMIZED_BYTECODE_SUFFIXES = ['.pyc']
SOURCE_SUFFIXES = ['.py']