# `builtins` --- 組み込みオブジェクト

This module provides direct access to all 'built-in' identifiers of Python; for example, `builtins.open` is the full name for the built-in function `open()`.

通常このモジュールはほとんどのアプリケーションで明示的にアクセスされることはありませんが、組み込みの値と同じ名前のオブジェクトを提供するモジュールが同時にその名前の組み込みオブジェクトも必要とするような場合には有用です。たとえば、組み込みの `open()` をラップした `open()` という関数を実装したいモジュールがあったとすると、このモジュールは次のように直接的に使われます:

    import builtins

    def open(path):
        f = builtins.open(path, 'r')
        return UpperCaser(f)

    class UpperCaser:
        '''Wrapper around a file that converts output to uppercase.'''

        def __init__(self, f):
            self._f = f

        def read(self, count=-1):
            return self._f.read(count).upper()

        # ...

ほとんどのモジュールではグローバル変数の一部として `__builtins__` が利用できるようになっています。 `__builtins__` の内容は通常このモジュールそのものか、あるいはこのモジュールの `__dict__` 属性です。これは実装の詳細部分なので、異なる Python の実装では `__builtins__` は使われていないこともあります。

参考

- 組み込み定数

- 組み込み例外

- 組み込み関数

- 組み込み型