Документация Python неофициальный перевод

__builtin__.md

33 строк · 2.7 КБ · обычная страница · сырой текст · скачать

1> **Источник:** https://python-all.ru/2.6/library/__builtin__.html2>3> «Документация Python на русском» – неофициальный перевод официальной документации Python: версии от 2.6 до 3.16, полнотекстовый поиск, английский оригинал рядом с переводом. Эта Markdown-версия страницы предназначена для работы с LLM: вставьте её в ChatGPT, Claude или Cursor.45---67# 27.2. `__builtin__` – Встроенные объекты89Этот модуль предоставляет прямой доступ ко всем «встроенным» идентификаторам Python; например, `__builtin__.open` – полное имя встроенной функции [`open()`](https://python-all.ru/2.6/library/functions.html#open).1011Обычно большинство приложений не обращаются к этому модулю явно, но он может быть полезен в модулях, которые предоставляют объекты с тем же именем, что и встроенное значение, но при этом также требуется встроенное значение с этим именем. Например, в модуле, который хочет реализовать функцию [`open()`](https://python-all.ru/2.6/library/functions.html#open), оборачивающую встроенную [`open()`](https://python-all.ru/2.6/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__` этого модуля. Поскольку это деталь реализации, она может не использоваться в альтернативных реализациях Python.33