Чтобы получить исключение 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()вернет строку, содержащую информацию обратной трассировки, включая номер строки, в которой произошло исключение.
Вот еще несколько способов добиться того же результата:
-
Вы можете использовать функцию
traceback.print_exc()для вывода информации трассировки непосредственно на консоль. -
Вы можете использовать функцию
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.