Форматирование исключений, как это делает PythonPython

Программы на Python
Anonymous
Форматирование исключений, как это делает Python

Сообщение Anonymous »

Если я вызову исключение в Python, вот что я получу:

raise Exception("Hello world")
Traceback (most recent call last):

File "", line 1, in
raise Exception("Hello world")

Exception: Hello world


Обратите внимание на последнюю строку, в которой говорится «Исключение: Привет, мир». Учитывая исключение (foo = Exception("Hello world")), как мне создать такой текст? Ничего из следующего не работает:

str(foo)
Out[27]: 'Hello world'

repr(foo)
Out[28]: "Exception('Hello world',)"

"{}".format(foo)
Out[29]: 'Hello world'

"{}: {}".format(type(foo), foo)
Out[30]: ": Hello world"

Вернуться в «Python»