27.2. builtins – Встроенные объекты¶builtins – Built-in objects
Этот модуль предоставляет прямой доступ ко всем встроенным идентификаторам Python; например, builtins.open – это полное имя встроенной функции open(). См. главу Встроенные объекты.
Обычно большинство приложений не обращаются к этому модулю явно, но он может быть полезен в модулях, которые предоставляют объекты с тем же именем, что и встроенное значение, но при этом также требуется встроенное значение с этим именем. Например, в модуле, который хочет реализовать функцию open(), оборачивающую встроенную open(), этот модуль может быть использован напрямую:
import builtins
def open(path):
f = builtins.open(path, 'r')
return UpperCaser(f)
class UpperCaser:
'''Обёртка для файла, преобразующая вывод в верхний регистр.'''
def __init__(self, f):
self._f = f
def read(self, count=-1):
return self._f.read(count).upper()
# ...
Как деталь реализации, большинство модулей содержат имя __builtins__, доступное в их глобальном пространстве имён. Значением __builtins__ обычно является либо этот модуль, либо значение атрибута __dict__ этого модуля. Поскольку это деталь реализации, она может не поддерживаться альтернативными реализациями Python.