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__ は使われていないこともあります。