Короткий ответ Сначала выполняется try; если исключения не было — выполняется else, затем всегда выполняется finally; если исключение возникло и было перехвачено — выполняется соответствующий except, затем finally; finally выполняется в любом случае, даже при исключении, return или необработанной ошибке. Как это работает подробнее Блок else в try/except — это код, который должен запуститься только тогда, когда try полностью завершился без исключений; он не выполнится, если исключение было поймано except'ом. finally гарантированно выполняется после try/except/else независимо от исхода: нормального завершения, перехваченного исключения или даже необработанного исключения, которое прокидывается дальше после finally. Пример кода Что использовать на практике Практика. else используют, чтобы не прятать код, зависящий от успеха операции, внутрь try — это снижает риск случайно перехватить исключение, брошенное уже в коде "после успеха". finally применяют для гарантированного освобождения ресурсов (закрытие файлов, со