3.9.1 Ejemplo de retraza

Este sencillo ejemplo implementa un bucle simple leer-evaluar-presentar, similar (aunque menos útil) que el bucle del intérprete interactivo de Python. Si se desea información sobre una implementación completa del bucle del intérprete, se debe ver el módulo code.

import sys, traceback

def run_user_code(envdir):
    source = raw_input(">>> ")
    try:
        exec source in envdir
    except:
        print "Excepción en código de usuario:"
        print '-'*60
        traceback.print_exc(file=sys.stdout)
        print '-'*60

envdir = {}
while 1:
    run_user_code(envdir)

Ver Sobre este documento... para obtener información sobre sugerencias.