Встроенные константы¶
Небольшое количество констант находится во встроенном пространстве имен. Они являются:
- 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с указанным кодом выхода.
- copyright¶
- credits¶
Объекты, которые при печати или вызове выводят на экран текст с указанием авторских прав или титров соответственно.
- license¶
Объект, который при печати выводит сообщение «Введите license(), чтобы увидеть полный текст лицензии», а при вызове отображает полный текст лицензии в режиме пейджера (по одному экрану за раз).