3. Built-in Constants¶
A small number of constants live in the built-in namespace. They are:
The sole value of the type
Noneis frequently used to represent the absence of a value, as when default arguments are not passed to a function. Assignments to
Noneare illegal and raise a
Special value which should be returned by the binary special methods (e.g.
__rsub__(), etc.) to indicate that the operation is not implemented with respect to the other type; may be returned by the in-place binary special methods (e.g.
__iand__(), etc.) for the same purpose. Its truth value is true.
When a binary (or in-place) method returns
NotImplementedthe interpreter will try the reflected operation on the other type (or some other fallback, depending on the operator). If all attempts return
NotImplemented, the interpreter will raise an appropriate exception. Incorrectly returning
NotImplementedwill result in a misleading error message or the
NotImplementedvalue being returned to Python code.
See Implementing the arithmetic operations for examples.
NotImplementedare not interchangeable, even though they have similar names and purposes. See
NotImplementedErrorfor details on when to use it.
The same as
.... Special value used mostly in conjunction with extended slicing syntax for user-defined container data types.
site module (which is imported automatically during startup, except
-S command-line option is given) adds several constants to the
built-in namespace. They are useful for the interactive interpreter shell and
should not be used in programs.
Objects that when printed, print a message like “Use quit() or Ctrl-D (i.e. EOF) to exit”, and when called, raise
SystemExitwith the specified exit code.