Найти в Дзене

Python | Конструкция try...except

Конструкция try ... except позволяет перехватывать исключения, полный синтаксис выглядит следующим образом: Минимально необходимая конструкция должна состоять из операторов try и except. Все остальные операторы являются необязательными. После оператора try записывается вложенная инструкция того, что должна выполнить программа. В случае успешного выполнения, выполнится инструкция после оператора else, если такой есть в программе. Если присутствует оператор finally, тогда вложенная в него инструкция выполняется всегда и в последнюю очередь. Если во время выполнения инструкции try_suite возникает исключение, то оно проверяется на соответствие операторами except. Exception_group может быть как единственным видом исключений, так и кортежем нескольких. Приставка as variable1 является необязательной и служит для записи исключения в переменную variable1, чтобы затем к нему можно было обратиться в инструкции except_suite1. Инструкция except_suite1 будет выполняться, когда при выполнении try_su

Конструкция try ... except позволяет перехватывать исключения, полный синтаксис выглядит следующим образом:

Минимально необходимая конструкция должна состоять из операторов try и except. Все остальные операторы являются необязательными.

После оператора try записывается вложенная инструкция того, что должна выполнить программа. В случае успешного выполнения, выполнится инструкция после оператора else, если такой есть в программе. Если присутствует оператор finally, тогда вложенная в него инструкция выполняется всегда и в последнюю очередь. Если во время выполнения инструкции try_suite возникает исключение, то оно проверяется на соответствие операторами except. Exception_group может быть как единственным видом исключений, так и кортежем нескольких. Приставка as variable1 является необязательной и служит для записи исключения в переменную variable1, чтобы затем к нему можно было обратиться в инструкции except_suite1. Инструкция except_suite1 будет выполняться, когда при выполнении try_suite возникнет исключение, соответствующее exception_group1.

При отлове конкретных ошибок необходимо указывать их вид в первую очередь, т.е.:

-2

В данном примере нам необходимо отловить ошибку индекса и выполнить соответствующее действие, а при возникновении любой другой - иное действие. В таком случае, исходя из структуры исключений, мы должны прописать конкретный вид исключения выше, чем более общий. Потому, что при возникновении IndexError, инструкция except_suite2 будет также исполнена, т.к. IndexError является частью вида Exception. И, если, нам необходимо, чтобы except_suite1 выполнился раньше except_suite2, то мы указываем более частный вид исключения.

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

Поддержите канал 👇

📢 Предлагается оценить степень твоей удовлетворённости каналом, по шкале от 1 до 5. Где 5будет соответствовать вариант «полностью удовлетворён», а 1 – «не удовлетворён».

#pythonснуля #программированиенаpython #урокиpython #python3 #исключения

✔ Не забываем ставить лайк и подписываться на мой канал: zen.yandex.ru/...bramenkova Впереди много познавательного!
-----
✔ Будем дружить
vk.com/...bramenkova
Благодарю каждого за репост!)