Я пытаюсь выяснить, какая была последняя попытка инструкции, которая вызвала исключение, например, Ошибка типа.
Давайте рассмотрим этот пример.
def test(value1, value2):
print("Hello" + value1 + value2)
Если эта функция вызывается с помощью:
test("World!", 5)
test(5, "World!")
Я получу ошибку TypeError в обоих случаях. Тем не менее, при первом выполнении последний оператор, который будет предпринят (и вызывает ошибку), будет "Hello" + value1
. Во втором исполнении это будет "Hello World!" + value2
. По крайней мере, я предполагаю, что Python выполняет оба по отдельности, поскольку они являются «вызовами» оператора add?
Хотя сообщение об ошибке будет одинаковым оба раза. Высказывание:
...
print("Hallo" + value1 + value2)
TypeError: must be str, not int
Могу ли я узнать, какой был последний выполненный оператор, вызвавший ошибку TypeError?