3.21.2 Sous-classer des Objets Repr

L'utilisation de l'aiguillage dynamique par Repr.repr1()permet aux sous-classes de Repr d'ajouter un support de types d'objets intégrés supplémentaires ou de modifier la gestion de types déjà supportés. Cet exemple montre comment un support particulier pour les objets fichier pourrait être ajouté:

import repr
import sys

class MyRepr(repr.Repr):
    def repr_file(self, obj, level):
        if obj.name in ['<stdin>', '<stdout>', '<stderr>']:
            return obj.name
        else:
            return `obj`

aRepr = MyRepr()
print aRepr.repr(sys.stdin)          # affiche '<stdin>'