__builtin__.md
1> **Источник:** https://python-all.ru/2.7/library/__builtin__.html2>3> «Документация Python на русском» – неофициальный перевод официальной документации Python: версии от 2.6 до 3.16, полнотекстовый поиск, английский оригинал рядом с переводом. Эта Markdown-версия страницы предназначена для работы с LLM: вставьте её в ChatGPT, Claude или Cursor.45---67# 28.3. [`__builtin__`](https://python-all.ru/2.7/library/__builtin__.html#module-__builtin__) – Встроенные объекты89Этот модуль предоставляет прямой доступ ко всем встроенным идентификаторам Python; например, `__builtin__.open` – это полное имя для встроенной функции [`open()`](https://python-all.ru/2.7/library/functions.html#open). См. [Встроенные функции](https://python-all.ru/2.7/library/functions.html#built-in-funcs) и [Встроенные константы](https://python-all.ru/2.7/library/constants.html#built-in-consts) в документации.1011Обычно большинство приложений не обращаются к этому модулю напрямую, но он может быть полезен в модулях, которые предоставляют объекты с тем же именем, что и встроенное значение, но при этом требуется и само встроенное значение с таким именем. Например, в модуле, который хочет реализовать функцию [`open()`](https://python-all.ru/2.7/library/functions.html#open), оборачивающую встроенную [`open()`](https://python-all.ru/2.7/library/functions.html#open), этот модуль можно использовать напрямую:1213```python14import __builtin__1516def open(path):17 f = __builtin__.open(path, 'r')18 return UpperCaser(f)1920class UpperCaser:21 '''Обёртка для файла, преобразующая вывод в верхний регистр.'''2223 def __init__(self, f):24 self._f = f2526 def read(self, count=-1):27 return self._f.read(count).upper()2829 # ...30```3132**Деталь реализации CPython:** Большинство модулей предоставляют имя `__builtins__` (обратите внимание на `'s'`) в составе своих глобальных переменных. Значением `__builtins__` обычно является либо этот модуль, либо значение атрибута [`__dict__`](https://python-all.ru/2.7/library/stdtypes.html#object.__dict__) этого модуля. Поскольку это деталь реализации, она может не использоваться в альтернативных реализациях Python.33