29.3. builtins — Objets natifs


Ce module fournit un accès direct aux identifiants “natifs” de Python; par exemple, builtins.open est le nom complet pour la fonction native open(). Voir Fonctions Natives et Built-in Constants pour plus de documentation.

Ce module n’est normalement pass accédé explicitement par la pluspart des applications, mais peut être utile dans des modules qui exposent des objets de même nom qu’une valeur native, mais pour qui le natif de même nom est aussi nécessaire. Par exemple, dans un module qui voudrait implémenter une fonction open() autour de la fonction native open(), ce module peut être utilisé directement :

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()

    # ...

As an implementation detail, most modules have the name __builtins__ made available as part of their globals. The value of __builtins__ is normally either this module or the value of this module’s __dict__ attribute. Since this is an implementation detail, it may not be used by alternate implementations of Python.