Python’s __all__: Packages, Modules, and Wildcard Imports
Python has something called wildcard imports, which look like from module import *
. This type of import allows you to quickly get all the objects from a module into your namespace. However, using this import on a package can be confusing because it’s not clear what you want to import: subpackages, modules, objects? Python has the __all__
variable to work around this issue.
The __all__
variable is a list of strings where each string represents the name of a variable, function, class, or module that you want to expose to wildcard imports.
In this tutorial, you’ll:
- Understand wildcard imports in Python
- Use
__all__
to control the modules that you expose to wildcard imports - Control the names that you expose