Если вам нужен класс ошибок, сообщение об ошибке и трассировка стека (или любой из них), используйте sys.exec_info()
.
Минимальный рабочий код с некоторым форматированием,
import sys
import traceback
try:
ans = 1/0
except BaseException as ex:
# Get current system exception
ex_type, ex_value, ex_traceback = sys.exc_info()
# Extract unformatter stack traces as tuples
trace_back = traceback.extract_tb(ex_traceback)
# Format stacktrace
stack_trace = list()
for trace in trace_back:
stack_trace.append("File : %s , Line : %d, Func.Name : %s, Message : %s" % (trace[0], trace[1], trace[2], trace[3]))
print("Exception type : %s " % ex_type.__name__)
print("Exception message : %s" %ex_value)
print("Stack trace : %s" %stack_trace)
, который выдаст следующий вывод,
Exception type : ZeroDivisionError
Exception message : division by zero
Stack trace : ['File : .\\test.py , Line : 5, Func.Name : , Message : ans = 1/0']
Это дает вам информацию об исключении о самом последнем исключении. Это вернет кортеж. Ниже приведены значения кортежей (type, value, traceback)
.
traceback является экземпляром объекта traceback. Вы можете отформатировать трассировку с помощью предоставленных методов. Больше можно найти в документации по трассировке
Нашел пару, похоже, что они делают похожие вещи. Я их не тестировал. Хотя jQuery.Rule выглядит довольно неплохо
jQuery.Rule от Ариэля Флеслера
Этот плагин позволяет быстро создавать / изменять правила CSS «в стиле jQuery». Он включает такие функции, как цепочка, итерация с использованием каждого из них, селекторы с контекстом.
GlobalStylesheet Джереми Ли
Включает модификацию CSS, которая использует «глобальную» таблицу стилей, а не встроенный CSS. Это особенно удобно для изменения стилей CSS, которые вы хотите сохранить до тех пор, пока страница не обновится снова.
Короткий ответ - нет. YUI является авангардом в этом вопросе.
Однако я полностью ожидаю, что в ближайшие недели (месяцы) будет сделано что-то подобное, поскольку методология, которую использует YUI, не кажется неповторимой и учитывая ее полезность и важность. эта функция есть.
Может быть, изучить метод YUI и сделать плагин самостоятельно?
Изменить: Похоже, я ошибаюсь. Вот почему вы никогда не публикуете такие негативы. :)