constants.md
1> **Источник:** https://python-all.ru/3/library/constants.html2>3> «Документация Python на русском» – неофициальный перевод официальной документации Python: версии от 2.6 до 3.16, полнотекстовый поиск, английский оригинал рядом с переводом. Эта Markdown-версия страницы предназначена для работы с LLM: вставьте её в ChatGPT, Claude или Cursor.45---67# Встроенные константы89Небольшое количество констант находится во встроенном пространстве имён. Вот они:1011#### `False`1213Ложное значение типа [`bool`](https://python-all.ru/3/library/functions.html#bool). Присваивание `False` запрещено и вызывает [`SyntaxError`](https://python-all.ru/3/library/exceptions.html#SyntaxError).1415#### `True`1617Истинное значение типа [`bool`](https://python-all.ru/3/library/functions.html#bool). Присваивание `True` запрещено и вызывает [`SyntaxError`](https://python-all.ru/3/library/exceptions.html#SyntaxError).1819#### `None`2021Объект, часто используемый для представления отсутствия значения, например, когда аргументы по умолчанию не передаются функции. Присваивание `None` запрещено и вызывает [`SyntaxError`](https://python-all.ru/3/library/exceptions.html#SyntaxError). `None` – единственный экземпляр типа [`NoneType`](https://python-all.ru/3/library/types.html#types.NoneType).2223#### `NotImplemented`2425Специальное значение, которое должно возвращаться бинарными специальными методами (например, [`__eq__()`](https://python-all.ru/3/reference/datamodel.html#object.__eq__), [`__lt__()`](https://python-all.ru/3/reference/datamodel.html#object.__lt__), [`__add__()`](https://python-all.ru/3/reference/datamodel.html#object.__add__), [`__rsub__()`](https://python-all.ru/3/reference/datamodel.html#object.__rsub__) и т.д.), чтобы указать, что операция не реализована для другого типа; может возвращаться бинарными специальными методами с присваиванием (например, [`__imul__()`](https://python-all.ru/3/reference/datamodel.html#object.__imul__), [`__iand__()`](https://python-all.ru/3/reference/datamodel.html#object.__iand__) и т.д.) для той же цели. Его не следует вычислять в логическом контексте. `NotImplemented` является единственным экземпляром типа [`types.NotImplementedType`](https://python-all.ru/3/library/types.html#types.NotImplementedType).2627> **Примечание**28>29> Когда бинарный (или с присваиванием) метод возвращает `NotImplemented`, интерпретатор попробует отражённую операцию на другом типе (или другой запасной вариант, в зависимости от оператора). Если все попытки возвращают `NotImplemented`, интерпретатор вызовет соответствующее исключение. Некорректный возврат `NotImplemented` приведёт к вводящему в заблуждение сообщению об ошибке или к возврату значения `NotImplemented` в код Python.30>31> См. [Реализация арифметических операций](https://python-all.ru/3/library/numbers.html#implementing-the-arithmetic-operations) с примерами.3233> **Внимание**34>35> `NotImplemented` и `NotImplementedError` не взаимозаменяемы. Эту константу следует использовать только так, как описано выше; подробнее о правильном использовании исключения см. в [`NotImplementedError`](https://python-all.ru/3/library/exceptions.html#NotImplementedError).3637Изменено в версии 3.9: Вычисление `NotImplemented` в логическом контексте было объявлено устаревшим.3839Изменено в версии 3.14: Вычисление `NotImplemented` в логическом контексте теперь вызывает [`TypeError`](https://python-all.ru/3/library/exceptions.html#TypeError). Ранее оно вычислялось в [`True`](https://python-all.ru/3/library/constants.html#True) и выдавало [`DeprecationWarning`](https://python-all.ru/3/library/exceptions.html#DeprecationWarning) начиная с Python 3.9.4041#### `Ellipsis`4243То же, что и литерал многоточия «`...`» – объект, часто используемый для указания на пропуск чего-либо. Присваивание `Ellipsis` возможно, но присваивание `...` вызывает [`SyntaxError`](https://python-all.ru/3/library/exceptions.html#SyntaxError). `Ellipsis` – единственный экземпляр типа [`types.EllipsisType`](https://python-all.ru/3/library/types.html#types.EllipsisType).4445#### `__debug__`4647Эта константа истинна, если Python не был запущен с опцией [`-O`](https://python-all.ru/3/using/cmdline.html#cmdoption-O). См. также оператор [`assert`](https://python-all.ru/3/reference/simple_stmts.html#assert).4849> **Примечание**50>51> Имена [`None`](https://python-all.ru/3/library/constants.html#None), [`False`](https://python-all.ru/3/library/constants.html#False), [`True`](https://python-all.ru/3/library/constants.html#True) и [`__debug__`](https://python-all.ru/3/library/constants.html#debug__) нельзя переприсваивать (присваивание им, даже в качестве имени атрибута, вызывает [`SyntaxError`](https://python-all.ru/3/library/exceptions.html#SyntaxError)), поэтому их можно считать «настоящими» константами.5253## Константы, добавляемые модулем [`site`](https://python-all.ru/3/library/site.html#module-site)5455Модуль [`site`](https://python-all.ru/3/library/site.html#module-site) (который импортируется автоматически во время запуска, если не указана опция командной строки [`-S`](https://python-all.ru/3/using/cmdline.html#cmdoption-S)) добавляет несколько констант во встроенное пространство имён. Они полезны для интерактивной оболочки интерпретатора и не должны использоваться в программах.5657#### `quit(code=None)`5859#### `exit(code=None)`6061Объекты, которые при выводе на печать отображают сообщение вроде «Use quit() or Ctrl-D (i.e. EOF) to exit», а при прямом обращении в интерактивном интерпретаторе или вызове как функции вызывают [`SystemExit`](https://python-all.ru/3/library/exceptions.html#SystemExit) с указанным кодом выхода.6263#### `help`6465Объект, который при выводе на печать отображает сообщение «Type help() for interactive help, or help(object) for help about object.», а при прямом обращении в интерактивном интерпретаторе запускает встроенную справочную систему (см. [`help()`](https://python-all.ru/3/library/functions.html#help)).6667#### `copyright`6869#### `credits`7071Объекты, которые при выводе на печать или вызове отображают текст авторского права или благодарностей соответственно.7273#### `license`7475Объект, который при выводе на печать выводит сообщение «Введите license(), чтобы увидеть полный текст лицензии», а при вызове отображает полный текст лицензии в стиле постраничного просмотра (по одному экрану за раз).76