try содержит потенциально ошибочную операцию, except обрабатывает подходящее исключение, а finally выполняет завершающие действия при выходе из блока. Для ресурсов часто удобнее with.
Расскажите о `try`, `except` и `finally` в Python.
try содержит потенциально ошибочную операцию, except обрабатывает подходящее исключение, а finally выполняет завершающие действия при выходе из блока. Для ресурсов часто удобнее with.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
try содержит потенциально ошибочную операцию, except обрабатывает подходящее исключение, а finally выполняет завершающие действия при выходе из блока. Для ресурсов часто удобнее with.
Обрабатывайте наиболее конкретные исключения и не скрывайте неожиданные ошибки общим except: pass. Необязательный else выполняется, если блок try завершился без исключения. Finally выполняется также при return, но return внутри finally способен подавить прежний результат или исключение, поэтому его обычно избегают. Аварийное завершение процесса или отключение питания не гарантирует выполнение Python-кода очистки.