try:
1 / 0
except ZeroDivisionError:
print("Ошибка деления на ноль")
finally:
print("Этот блок всегда выполнится")
ZeroDivisionError
в блоке try
. Затем, блок except ZeroDivisionError
перехватит исключение и напечатает "Ошибка деления на ноль". Блок finally
выполнится в любом случае, напечатав "Этот блок всегда выполнится". В итоге, на экран будет выведено:
Этот код демонстрирует работу блоков try
, except
и finally
в Python.
Блок try
:
Код, который может вызвать исключение, помещается в блок try
. В данном случае, это выражение 1 / 0
, которое вызывает ошибку ZeroDivisionError
, так как деление на ноль недопустимо.
Блок except
:
Блок except
предназначен для обработки определенных исключений. В данном случае, except ZeroDivisionError
перехватывает исключение ZeroDivisionError
, которое было вызвано в блоке try
. Если такое исключение происходит, выполняется код внутри этого блока, а именно print("Ошибка деления на ноль")
.
Блок finally
:
Блок finally
выполняется всегда, независимо от того, было ли выброшено исключение в блоке try
или нет, и было ли оно перехвачено в блоке except
. В данном случае, print("Этот блок всегда выполнится")
всегда будет выполнен.
При запуске этого кода будет выведено следующее:
Ошибка деления на ноль
Этот блок всегда выполнится
try
.ZeroDivisionError
.except ZeroDivisionError
перехватывает исключение и печатает "Ошибка деления на ноль".finally
, и печатается "Этот блок всегда выполнится".