1. 학습
  2. /
  3. 강의
  4. /
  5. Вступ до обʼєктно-орієнтованого програмування в Python

Connected

연습 문제

Перехоплення винятків

Перш ніж писати власні користувацькі винятки, переконаймося, що ви впевнено володієте основами обробки винятків.

У цій вправі вам надано функцію invert_at_index(x, ind), яка приймає два аргументи: список x та індекс ind, і обертає елемент списку за цим індексом. Наприклад, invert_at_index([5,6,7], 0) повертає 1/5, тобто 0.2.

Ваше завдання — реалізувати обробку помилок і викидати користувацькі винятки залежно від типу помилки, що виникає.

지침

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