Built-in Constants¶
A small number of constants live in the built-in namespace. They are:
- False¶
The false value of the
booltype. Assignments toFalseare illegal and raise aSyntaxError.
- True¶
The true value of the
booltype. Assignments toTrueare illegal and raise aSyntaxError.
- None¶
An object frequently used to represent the absence of a value, as whendefault arguments are not passed to a function. Assignments to
Noneare illegal and raise aSyntaxError.Noneis the sole instance of theNoneTypetype.
- NotImplemented¶
A special value which should be returned by the binary special methods(e.g.
__eq__(),__lt__(),__add__(),__rsub__(),etc.) to indicate that the operation is not implemented with respect tothe other type; may be returned by the in-place binary special methods(e.g.__imul__(),__iand__(), etc.) for the same purpose.It should not be evaluated in a boolean context.NotImplementedis the sole instance of thetypes.NotImplementedTypetype.Note
When a binary (or in-place) method returns
NotImplementedtheinterpreter will try the reflected operation on the other type (or someother fallback, depending on the operator). If all attempts returnNotImplemented, the interpreter will raise an appropriate exception.Incorrectly returningNotImplementedwill result in a misleadingerror message or theNotImplementedvalue being returned to Python code.SeeImplementing the arithmetic operations for examples.
Caution
NotImplementedandNotImplementedErrorare notinterchangeable. This constant should only be used as describedabove; seeNotImplementedErrorfor details on correct usageof the exception.Changed in version 3.9:Evaluating
NotImplementedin a boolean context was deprecated.Changed in version 3.14:Evaluating
NotImplementedin a boolean context now raises aTypeError.It previously evaluated toTrueand emitted aDeprecationWarningsince Python 3.9.
- Ellipsis¶
The same as the ellipsis literal “
...”, an object frequently used toindicate that something is omitted. Assignment toEllipsisis possible, butassignment to...raises aSyntaxError.Ellipsisis the sole instance of thetypes.EllipsisTypetype.
- __debug__¶
This constant is true if Python was not started with an
-Ooption.See also theassertstatement.
Note
The namesNone,False,True and__debug__cannot be reassigned (assignments to them, even as an attribute name, raiseSyntaxError), so they can be considered “true” constants.
Constants added by thesite module¶
Thesite module (which is imported automatically during startup, exceptif the-S command-line option is given) adds several constants to thebuilt-in namespace. They are useful for the interactive interpreter shell andshould 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 accessed directly in the interactiveinterpreter or called as functions, raise
SystemExitwith thespecified exit code.
- help
Object that when printed, prints the message “Type help() for interactivehelp, or help(object) for help about object.”, and when accessed directlyin the interactive interpreter, invokes the built-in help system(see
help()).
- copyright¶
- credits¶
Objects that when printed or called, print the text of copyright orcredits, respectively.
- license¶
Object that when printed, prints the message “Type license() to see thefull license text”, and when called, displays the full license text in apager-like fashion (one screen at a time).