На этом шаге мы приведем общие сведения об исключениях.
Исключения - это извещения интерпретатора, возбуждаемые в случае возникновения ошибки в программном коде или при наступлении какого-либо события. Если в коде не предусмотрена обработка исключения, то выполнение программы прерывается, и выводится сообщение об ошибке.
Существуют три типа ошибок в программе:
>>> print ("Нет завершающей кавычки!) SyntaxError: EOL while scanning string literal
>>> def test (x, y): return x / y >>> test (4, 2) # Нормально 2.0 >>> test (4, 0) # Ошибка Traceback (most recent call last): File "<pyshell#4>", line 1, in <module> test (4, 0) # Ошибка File "<pyshell#2>", line 1, in test def test (x, y): return x / y ZeroDivisionError: division by zero
Необходимо заметить, что в языке Python исключения возбуждаются не только при ошибке, но и как уведомление о наступлении каких-либо событий. Например, метод index() возбуждает исключение ValueError, если искомый фрагмент не входит в строку:
>>> "Строка".index("текст") Traceback (most recent call last): File "<pyshell#5>", line 1, in <module> "Строка".index("текст") ValueError: substring not found
На следующем шаге мы рассмотрим инструкцию try...except..else...finally.