4. Built-in Constants — Python documentation
4. Built-in Constants
A small number of constants live in the built-in namespace. They are:
- False
The false value of the bool type.
New in version 2.3.
- True
The true value of the bool type.
New in version 2.3.
- None
The sole value of types.NoneType.
None
is frequently used to represent the absence of a value, as when default arguments are not passed to a function.Changed in version 2.4: Assignments to
None
are illegal and raise aSyntaxError
.
- NotImplemented
- Special value which can be returned by the “rich comparison” special methods (
__eq__()
,__lt__()
, and friends), to indicate that the comparison is not implemented with respect to the other type.
- Ellipsis
- Special value used in conjunction with extended slicing syntax.
- __debug__
- This constant is true if Python was not started with an -O option. See also the assert statement.
Note
The names None and __debug__ cannot be reassigned (assignments to them, even as an attribute name, raise SyntaxError
), so they can be considered “true” constants.
Changed in version 2.7: Assignments to __debug__
as an attribute became illegal.
4.1. Constants added by the site module
The site module (which is imported automatically during startup, except if the -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.
- quit([code=None])
exit([code=None])
- Objects that when printed, print a message like “Use quit() or Ctrl-D (i.e. EOF) to exit”, and when called, raise
SystemExit
with the specified exit code.
- copyright
credits
- Objects that when printed or called, print the text of copyright or credits, respectively.
- license
- Object that when printed, prints the message “Type license() to see the full license text”, and when called, displays the full license text in a pager-like fashion (one screen at a time).