¿Cómo imprimir el seguimiento de la pila de excepciones en Python?

Requisito previo: Rastreo de Python

Para imprimir el seguimiento de la pila para una excepción, el código sospechoso se mantendrá en el bloque de prueba y se empleará el bloque de excepción para manejar la excepción generada. Aquí imprimiremos el seguimiento de la pila para manejar la excepción generada. El seguimiento de la pila de impresión para una excepción ayuda a comprender el error y qué salió mal con el código. No solo esto, el seguimiento de la pila también muestra dónde ocurrió el error.

La estructura general de un seguimiento de pila para una excepción: 


  •  

Ejemplo: 

Traceback (most recent call last):
  File "C:/Python27/hdg.py", line 5, in 
    value=A[5]
IndexError: list index out of range

Método 1: Usando el método print_exc() .

Este método p

    Código:

    Python3

    # import module
    import traceback
      
    # declaring and assigning array
    A = [1, 2, 3, 4]
      
    # exception handling
    try:
        value = A[5]
          
    except:
        # printing stack trace
        traceback.print_exc()
      
    # out of try-except
    # this statement is to show
    # that program continues normally
    # after an exception is handled
    print("end of program")
    

    Producción: 

    Traceback (most recent call last):
      File "C:/Python27/hdg.py", line 8, in 
        value=A[5]
    IndexError: list index out of range
    end of program
    

    Código :

    Python3

    # import required libraries
    import traceback
    import sys
      
    # initialising variables
    a = 4
    b = 0
      
    # exception handling
    try:
        value = a / b
      
    except:
        # printing stack trace
        traceback.print_exception(*sys.exc_info())
      
    # out of try-except
    # this statement is to show 
    # that program continues
    # normally after an exception is handled
    print("end of program")
    

    Producción: 

    Traceback (most recent call last):
      File "C:/Python27/hdg.py", line 10, in 
        value=a/b
    ZeroDivisionError: integer division or modulo by zero
    end of program
    

    Publicación traducida automáticamente

    Artículo escrito por vanshikagoyal43 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

    Deja una respuesta

    Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *