__builtin__
__builtin__ — Built-in objects
该模块提供对Python所有“内置”标识符的直接访问; 例如,__builtin__.open是内置函数open()的全名。 有关文档,请参阅内置函数和内置常量。
这个模块通常不会被大多数应用程序明确地访问,但是可以在提供与内置值相同名称的对象的模块中使用,但也需要该名称的内置。 例如,在一个想要实现open()函数的模块中,该函数包装了内置的open(),可以直接使用该模块:
import __builtin__
def open(path):
f = __builtin__.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()
# ...
CPython实现细节:大多数模块的名称__builtins__(注意's')作为其全局变量的一部分提供。 __builtins__的值通常是该模块或此模块的__dict__属性的值。 由于这是一个实现细节,它可能不会被替代的Python实现使用。