Я хочу обработать AssertionError
как для скрытия ненужных частей трассировки стека от пользователя, так и для печати сообщения о том, почему произошла ошибка и что пользователь должен делать с ней.
Есть ли способ узнать, какая строка или оператор assert
не удалось выполнить в блоке except
?
try:
assert True
assert 7 == 7
assert 1 == 2
# many more statements like this
except AssertionError:
print 'Houston, we have a problem.'
print
print 'An error occurred on line ???? in statement ???'
exit(1)
Я не хочу добавлять это к каждому утверждению assert:
assert 7 == 7, "7 == 7"
поскольку он повторяет информацию.