Рассмотрим следующий код:
try:
raise Exception("a")
except:
try:
raise Exception("b")
finally:
raise
Это поднимет Exception: a. Я ожидал, что он поднимет Exception: b (нужно объяснить, почему?). Почему последний raise поднимает исходное исключение, а не (что я думал) было вызвано последним исключением?