4. Built-in Constants¶
A small number of constants live in the built-in namespace. They are:
-
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 theassert
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).