29.3. builtins - 内建对象

此模块提供对Python的所有'内建'标识符的直接访问;例如,builtins.open是内建函数open()的全名。有关文档,请参见Built-in FunctionsBuilt-in Constants

这个模块通常不被大多数应用程序显式地访问,但在提供与内建值相同名称的对象的模块中很有用,但是其中还需要该名称的内建。例如,在想要实现包装内建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 upper-case.'''

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

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

    # ...

作为实现细节,大多数模块具有作为其全局的一部分可用的名称__builtins____builtins__的值通常是此模块或此模块的__dict__属性的值。由于这是一个实现细节,它不能被Python的替代实现使用。