Jak mogę uzyskać nazwę wyjątku podniesionego w Pythonie?Jak uzyskać nazwę wyjątku złapaną w Pythonie?
np
try:
foo = bar
except Exception as exception:
name_of_exception = ???
assert name_of_exception == 'NameError'
print "Failed with exception [%s]" % name_of_exception
Na przykład, ja wzrok wielu (lub wszystkie) wyjątki, a chcesz drukować nazwę wyjątku w komunikacie o błędzie.
* Dlaczego * Czy myślę, że nie d to? Dlaczego nie złapać bardziej konkretnego wyjątku (np. 'Z wyjątkiem NameError:') na początek? – delnan
Mam kilka scenariuszy, w których chcę przechwycić wszystkie wyjątki (lub ich listę) i chcę wydrukować nazwę wyjątku w komunikacie o błędzie. –
Możesz chcieć sprawdzić standardowy moduł biblioteczny ['traceback'] (https://docs.python.org/3/library/traceback.html), który ma funkcje pozwalające na wygodne formatowanie wyjątków i tracebacków. – Blckknght