Работа с оператором try…except…finally в Python на примерах

Оператор try…except позволяет перехватывать одно или несколько исключений в предложении try и обрабатывать каждое из них в предложениях except.

Содержание

Введение в оператор Python try…catch…finally

Оператор try…except также имеет в Python необязательное предложение, называемое finally:

try:
    # code that may cause exceptions
except:
    # code that handle exceptions
finally:
    # code that clean up

Предложение finally всегда выполняется независимо от того, произошло исключение или нет. И оно выполняется после предложения try и любого предложения except.

Следующая блок-схема иллюстрирует предложение try…catch…finally в Python:

Пример оператора try catch finally в Python

Примеры с оператором try…catch…finally в Python

В следующем примере используется оператор try…catch…finally:

a = 10
b = 0

try:
    c = a / b
    print(c)
except ZeroDivisionError as error:
    print(error)
finally:
    print('Finishing up.')

Выход:

division by zero
Finishing up.

В этом примере предложение try вызывает исключение ZeroDivisionError при выполнении обоих предложений, кроме и окончательного.

Предложение try в следующем примере не вызывает ошибку. Поэтому все операторы в предложениях try и finally выполняются:

a = 10
b = 2

try:
    c = a / b
    print(c)
except ZeroDivisionError as error:
    print(error)
finally:
    print('Finishing up.')

Выход:

5.0
Finishing up.

Оператор try…finally

Предложение catch в операторе try…catch…finally является необязательным. Поэтому вы можете написать его так:

try:
    # the code that may cause an exception
finally:
    # the code that always executes

Обычно этот оператор используется, когда вы не можете обработать исключение, но хотите очистить ресурсы. Например, вы хотите закрыть файл, который был открыт.

Похожие посты
Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *