Код напечатает 5.0, затем «Успешно выполнено» и «Завершено». Исключения нет, поэтому except пропускается, else выполняется, а finally завершается последним.
Что произойдет при выполнении следующего кода?
Код напечатает 5.0, затем «Успешно выполнено» и «Завершено». Исключения нет, поэтому except пропускается, else выполняется, а finally завершается последним.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Условие
Что произойдет при выполнении следующего кода?
try: print(10 / 2) except ZeroDivisionError: print("Ошибка деления") else: print("Успешно выполнено") finally: print("Завершено")
Ответ
Код напечатает 5.0, затем «Успешно выполнено» и «Завершено». Исключения нет, поэтому except пропускается, else выполняется, а finally завершается последним.
5.0
Успешно выполнено
Завершено
В Python оператор / для этих целых возвращает float. Блок else относится к успешному завершению try без исключения. finally выполняется и при обычном выходе, и при распространении исключения, за исключением аварийного прекращения процесса и подобных внешних ситуаций.