Definition
The place where a variable is stored. Namespaces are implemented as
dictionaries. There are the local, global and built-in namespaces as well
as nested namespaces in objects (in methods). Namespaces support
modularity by preventing naming conflicts. For instance, the functions
builtins.open and os.open() are distinguished by
their namespaces. Namespaces also aid readability and maintainability by
making it clear which module implements a function. For instance, writing
random.seed() or itertools.islice() makes it clear that those
functions are implemented by the random and itertools
modules, respectively.