3.9 traceback -- Presenta o recupera una retraza de la pila

Este módulo proporciona una interfaz estándar para extraer, dar formato y presentar trazas de pila de progranas de Python. Imita fielmente el comportamiento del intérprete de Python para presentar una traza de la pila. Resulta útil para presentar trazas de pila bajo control de programa, formando una ``cobertura'' del intérprete.

El módulo utiliza objetos retraza, el tipo de objeto que se guarda en las variables sys.exc_traceback y sys.last_traceback o el devuelto en el tercer elemento de sys.exc_info().

El módulo define las siguientes funciones:

print_tb (traceback[, limit[, file]])
Presenta hasta limit elementos de la traza de la pila de traceback. Si se omite limit o es None, se muestran todos. Si se omite file o es None, la salida va a sys.stderr; en caso contrario debe ser un fichero abierto o un objeto que imite dicha interfaz para recibir la salida.

print_exception (type, value, traceback[, limit[, file]])
Presenta la información de la excepción y hasta limit elementos de la traza de la pila de traceback a file. Se diferencia de print_tb() en: (1) si traceback no es None, presenta una cabecera "Traceback (innermost last):"; (2) presenta el tipo type y valor value tras la traza de la pila; (3) si el tipo type es SyntaxError y value tiene el formato adecuado, presenta la línea en que se dio el error de sintaxis con un indicador de la posición aproximada del error.

print_exc ([limit[, file]])
Es una abreviatura de `print_exception(sys.exc_type, sys.exc_value, sys.exc_traceback, limit, file)'. De hecho, utiliza sys.exc_info() para recuperar la misma información con seguridad multi-hilo.

print_last ([limit[, file]])
Es una abreviatura de `print_exception(sys.last_type, sys.last_value, sys.last_traceback, limit, file)'.

print_stack ([f[, limit[, file]]])
Esta función presenta una traza de la pila desde su punto de llamada. Se puede utilizar el argumento opcional f para especificar un marco de pila alternativo para empezar. Los argumentos opcionales limit y file tienen los mismos significados que en print_exception().

extract_tb (traceback[, limit])
Devuelve una lista de hasta limit elementos de traza de pila ``pre-procesados'' extraídos del objeto retraza traceback. Es útil para el formato alternativo de trazas de pila. Si se omite limit o es None, se extraen todos los elementos. Un elemento de traza de pila ``pre-procesada'' es una cuadrupla (filename, line number, function name, text) que representa la información que se suele presentar para una retraza. text es una cadena con el espacio inicial y final eliminado; si no está disponible el código fuente es None.

extract_stack ([f[, limit]])
Extrae la retraza en bruto del marco de pila en curso. El valor de retorno tiene el mismo formato que extract_tb(). Los argumentos opcionales f y limit tienen el mismo significado que en print_stack().

format_list (list)
Dada una lista de tuplas, según las devuelve extract_tb() o extract_stack(), devuelve una lista de cadenas lista para imprimir. Cada cadena de la lista resultante corresponde con el elemento del mismo índice de la lista de argumentos. Cada cadena termina en un salto de línea. Las cadenas pueden contener saltos de línea internos a su vez, para los elementos cuya línea de código fuente no sea None.

format_exception_only (type, value)
Da formato a la parte de una retraza. Los argumentos son el tipo y valor de la excepción, del mismo modo que sys.last_type y sys.last_value. El valor de retorno es una lista de cadenas, acabada cada una por un salto de línea. Normalmente, la lista consta de una sola cadena. Sin embargo, en las excepciones SyntaxError, contiene varias líneas que muestran información detallada sobre dónde se provocó el error. El mensaje que indica qué excepción se dio siempre es el último de la lista.

format_exception (type, value, tb[, limit])
Da formato a una traza de la pila e información de excepción. Los argumentos tienen el mismo significado que los argumentos correspondientes de print_exception(). El valor de retorno es una lista de cadenas, terminada cada una por un salto de línea y con posibles saltos de línea internos. Si se concatenan y presentan las cadenas, se muestra exactamente el mismo texto que con print_exception().

format_tb (tb[, limit])
Sinónimo abreviado de format_list(extract_tb(tb, limit)).

format_stack ([f[, limit]])
Sinónimo abreviado de format_list(extract_stack(f, limit)).

tb_lineno (tb)
Esta función devuelve el número de línea en curso establecido en el objeto retraza. Suele ser el mismo que el campo tb.tb_lineno del objeto, pero si se usa optimización (el indicador -O) no se actualiza el campo correctamente. Esta función calcula el valor correcto.


Subsections

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