Cuando ocurre una excepción en Python, ¿puedes inspeccionar la pila? ¿Puedes determinar su profundidad? Miré el módulo traceback, pero no sé cómo usarlo.¿Cómo se puede inspeccionar mediante programación el seguimiento de la pila de una excepción en Python?
Mi objetivo es detectar cualquier excepción que ocurra durante el análisis de una expresión eval, sin capturar excepciones lanzadas por ninguna función que pueda haber llamado. No me regañes por usar eval. No fue mi decisión.
NOTA: deseo hacer esto programáticamente, no interactivamente.
No estoy intentando imprimir la trazabilidad. Estoy tratando de inspeccionarlo. ¿Cómo me dice esto si la excepción ocurrió en el texto eval mismo o en una función llamada por el texto evaluado? –
SyntaxError se lanzará si el texto 'eval' es incorrecto. –
Se pueden generar muchos tipos diferentes de errores si el texto eval es incorrecto.Terminé usando inspeccionar y mirando la profundidad del rastreo para ver si el error fue causado al evaluar el texto original, o si estaba en el cuerpo de una función llamada. –