1 2 :mod:`__builtin__` --- Built-in objects 3 ======================================= 4 5 .. module:: __builtin__ 6 :synopsis: The module that provides the built-in namespace. 7 8 9 This module provides direct access to all 'built-in' identifiers of Python; for 10 example, ``__builtin__.open`` is the full name for the built-in function 11 :func:`open`. See :ref:`built-in-funcs` and :ref:`built-in-consts` for 12 documentation. 13 14 15 This module is not normally accessed explicitly by most applications, but can be 16 useful in modules that provide objects with the same name as a built-in value, 17 but in which the built-in of that name is also needed. For example, in a module 18 that wants to implement an :func:`open` function that wraps the built-in 19 :func:`open`, this module can be used directly:: 20 21 import __builtin__ 22 23 def open(path): 24 f = __builtin__.open(path, 'r') 25 return UpperCaser(f) 26 27 class UpperCaser: 28 '''Wrapper around a file that converts output to upper-case.''' 29 30 def __init__(self, f): 31 self._f = f 32 33 def read(self, count=-1): 34 return self._f.read(count).upper() 35 36 # ... 37 38 .. impl-detail:: 39 40 Most modules have the name ``__builtins__`` (note the ``'s'``) made available 41 as part of their globals. The value of ``__builtins__`` is normally either 42 this module or the value of this modules's :attr:`~object.__dict__` attribute. Since 43 this is an implementation detail, it may not be used by alternate 44 implementations of Python. 45