Встроенные константы

Небольшое количество констант находится во встроенном пространстве имен. Они являются:

False

Значение false типа bool. Присвоение значения False недопустимо и приводит к SyntaxError.

True

Истинное значение типа bool. Присвоения True недопустимы и приводят к SyntaxError.

None

Объект, часто используемый для обозначения отсутствия значения, например, когда аргументы по умолчанию не передаются функции. Присвоения None недопустимы и приводят к возникновению ошибки SyntaxError. None это единственный экземпляр типа NoneType.

NotImplemented

Специальное значение, которое должно быть возвращено специальными двоичными методами (например, __eq__(), __lt__(), __add__(), __rsub__(), и т.д.), чтобы указать, что операция не реализована в отношении другого типа; может быть возвращено специальными двоичными методами (например, __imul__(), __iand__(), и т.д.) для той же цели. Он не должен вычисляться в логическом контексте. NotImplemented является единственным экземпляром типа types.NotImplementedType.

Примечание

Когда двоичный (или локальный) метод возвращает NotImplemented, интерпретатор попытается выполнить отраженную операцию для другого типа (или какой-либо другой резервный вариант, в зависимости от оператора). Если все попытки вернут значение NotImplemented, интерпретатор вызовет соответствующее исключение. Неправильный возврат NotImplemented приведет к появлению вводящего в заблуждение сообщения об ошибке или к возвращению значения NotImplemented в код Python.

Примеры приведены в разделе Выполнение арифметических операций.

Примечание

NotImplementedError и NotImplemented не взаимозаменяемы, хотя имеют схожие названия и назначение. Подробнее о том, когда их использовать, смотрите в разделе NotImplementedError.

Изменено в версии 3.9: Вычисление NotImplemented в логическом контексте не рекомендуется. Хотя в настоящее время оно оценивается как true, оно будет выдавать значение DeprecationWarning. В будущей версии Python оно вызовет значение TypeError.

Ellipsis

Аналогично литералу с многоточием «...». Специальное значение, используемое в основном в сочетании с расширенным синтаксисом разбиения на части для пользовательских контейнерных типов данных. Ellipsis является единственным экземпляром типа types.EllipsisType.

__debug__

Эта константа имеет значение true, если Python не был запущен с параметром -O. Смотрите также инструкцию assert.

Примечание

Имена None, False, True и __debug__ не могут быть переназначены (присвоения им, даже в качестве имени атрибута, приводят к появлению SyntaxError), поэтому их можно считать «истинными» константами.

Константы, добавленные модулем site

Модуль site (который импортируется автоматически при запуске, за исключением случаев, когда задан параметр командной строки -S) добавляет несколько констант во встроенное пространство имен. Они полезны для интерактивной оболочки интерпретатора и не должны использоваться в программах.

quit(code=None)
exit(code=None)

Объекты, которые при печати выводят сообщение типа «Используйте quit() или Ctrl-D (т.е. EOF) для выхода», а при вызове выводят SystemExit с указанным кодом выхода.

credits

Объекты, которые при печати или вызове выводят на экран текст с указанием авторских прав или титров соответственно.

license

Объект, который при печати выводит сообщение «Введите license(), чтобы увидеть полный текст лицензии», а при вызове отображает полный текст лицензии в режиме пейджера (по одному экрану за раз).

Вернуться на верх