Используйте блок try ... else в Python

  1. Используйте блок try...except без предложения else в Python
  2. Используйте блок try...except с предложением else в Python

В этой статье объясняется, как использовать else вместе с парой try...except. Мы включили несколько методов, которые вы используете в качестве руководства для включения пары в программу.

try
   except: <a code block>
   else: <a code block. Note: 'else' clause is optional>

Предложение except используется для указания обработчиков исключений >=1. Блок кода, связанный с этим предложением, выполняется, если в блоке try возникли исключения, и, следовательно, обрабатывает ошибку.

Предложение else необязательно. Ставится после всех except. Блок кода, связанный с этим предложением, выполняется только в том случае, если в блоке try отсутствуют исключения.

Давайте попробуем примеры с утверждениями else и без них.

Используйте блок try...except без предложения else в Python

Вот пример кода, демонстрирующий использование try...except без предложения else.

try:
  print("From the 'try' statement block - ",var1)
except:
  print("Except block - An exception occurred")

Здесь var1 не определена в блоке try, и происходит следующее.

  • Исключение в блоке try.
  • Оператор print, присутствующий в блоке try, НЕ печатается.
  • Выполняется блок кода except.

Выход:

Except block - An exception occurred

Используйте блок try...except с предложением else в Python

Здесь пример кода показывает, как можно использовать try...except с предложением else.

try:
  var=3
  print("From the 'try' statement block - ",var)
except NameError:
  print("Except block with 'NameError'-Variable `var` is not defined")
except:
  print("Except block -Some other exception")
else:
  print("From the 'else' clause block - ",var)

Здесь var определен в блоке try, поэтому происходит следующее.

  • Никаких исключений в блоке try не возникает.
  • Распечатывается оператор print, присутствующий в блоке try.
  • Блок кода except НЕ выполняется.
  • Выполняется блок кода else.
  • Распечатывается оператор print, присутствующий в блоке else.

Выход:

From the 'try' statement block -  3
From the 'else' clause block -  3

Сопутствующая статья - Python Exception

  • Создание настраиваемых исключений в Python