1. Learn
  2. /
  3. Courses
  4. /
  5. Введение в объектно-ориентированное программирование на Python

Connected

Exercise

Перехват исключений

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

В этом упражнении вам дана функция invert_at_index(x, ind), которая принимает два аргумента — список x и индекс ind — и возвращает число, обратное элементу списка с этим индексом. Например, invert_at_index([5,6,7], 0) возвращает 1/5, то есть 0.2.

Ваша задача — реализовать обработку ошибок, чтобы вызывать нужные исключения в зависимости от типа возникшей ошибки.

Instructions

100 XP

Используйте конструкцию try - except - except (с двумя блоками except) внутри функции, чтобы перехватывать и обрабатывать два исключения следующим образом:

  • в блоке try выполните код как есть, возвращая 1/x[ind];
  • если возникает ZeroDivisionError, выведите "Cannot divide by zero!";
  • если возникает IndexError, выведите "Index out of range!".

Вы всё сделали правильно, если код выполняется без ошибок и в консоли отображается следующее:

0.16666666666666666
Cannot divide by zero!
None
Index out of range!
None