Как фиксировать исключения Python с помощью номеров строк

Чтобы получить исключение Python с номером строки, вы можете использовать модуль трассировки. Вот пример:

import traceback
try:
    # Your code here
    1 / 0  # This will raise a ZeroDivisionError
except Exception as e:
    traceback_str = traceback.format_exc()
    print(traceback_str)

Функция traceback.format_exc()вернет строку, содержащую информацию обратной трассировки, включая номер строки, в которой произошло исключение.

Вот еще несколько способов добиться того же результата:

  1. Вы можете использовать функцию traceback.print_exc()для вывода информации трассировки непосредственно на консоль.

  2. Вы можете использовать функцию sys.exc_info()для получения информации об исключении, а затем извлечь номер строки из объекта трассировки.

import sys
import traceback
try:
    # Your code here
    1 / 0  # This will raise a ZeroDivisionError
except Exception as e:
    exc_type, exc_value, exc_traceback = sys.exc_info()
    line_number = exc_traceback.tb_lineno
    print(f"Exception occurred at line {line_number}")

Эти методы позволяют вам фиксировать и отображать номер строки, в которой произошло исключение в вашем коде Python.