Что значит неожиданно выкинет другую ошибку? try ставится на небольшие участки кода, которые иногда выбрасывают исключения при невалидном вводе, разрыве сети итд, при этом только для тех ситуаций, которые ты можешь обработать. Если вдруг этот небольшой код может выбросить разные исключение, которые надо обрабатывать по разному, то да, два блока except. Если обработка одинаковая, то зачем два блока?
try except это не что-то чего надо избегать, это что-то что можкт заменить много уродливых ифов.
Иф заставляет вдумываться сначала в условия потом в код.
try можно прочесть вообще без блока except и получить общую информацию что происходит в коде
Ну, спустя два дня реплай будет неактуален, но мы уже обсуждали тему исключений и чем он плохи при разработке проектов