Встроенные константы
Небольшое количество констант хранится во встроенном пространстве имен. Это:
-
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в булевом контексте устарело. В настоящее время оно вычисляется как истинное, но будет генерироватьDeprecationWarning. В будущей версии Python будет вызыватьTypeError.
-
Ellipsis -
То же самое, что и литерал эллипса “
...”. Специальное значение, используемое в основном в сочетании с расширенной синтаксисом срезов для пользовательских типов контейнеров данных.Ellipsis— единственный экземпляр типаtypes.EllipsisType.
Примечание
Имена None, False, True и __debug__ не могут быть переопределены (присваивание им, даже как имени атрибута, вызывает SyntaxError), поэтому их можно считать «истинными» константами.
Константы, добавленные модулем site
Модуль site (который автоматически импортируется при запуске, за исключением случаев, когда используется опция командной строки -S) добавляет несколько констант во встроенное пространство имен. Они полезны для интерактивной оболочки интерпретатора и не должны использоваться в программах.
-
quit(code=None) -
exit(code=None) -
Объекты, которые при выводе на экран выводят сообщение, подобное «Используйте quit() или Ctrl-D (EOF), чтобы выйти», а при вызове поднимают
SystemExitс указанным кодом выхода.
-
copyright -
credits -
Объекты, которые при выводе на экран или вызове выводят текст авторских прав или информации о разработчиках соответственно.
-
license -
Объект, который при выводе на экран выводит сообщение «Введите license(), чтобы увидеть полный текст лицензии», а при вызове отображает полный текст лицензии в виде страниц (по одной странице за раз).
© 2001–2023 Python Software Foundation
Licensed under the PSF License.
https://docs.python.org/3.10/library/constants.html