Быстрый в изучении - мощный в программировании
>> Telegram ЧАТ для Python Программистов

Свободное общение и помощь советом и решением проблем с кодом! Заходите в наш TELEGRAM ЧАТ!

>> Python Форум Помощи!

Мы создали форум где отвечаем на все вопросы связанные с языком программирования Python. Ждем вас там!

>> Python Канал в Telegram

Обучающие статьи, видео и новости из мира Python. Подпишитесь на наш TELEGRAM КАНАЛ!

Обработка исключений

Исключения - это извещения интерпретатора, возбуждаемые в случае возникновения ошибок в программном коде или при наступлении какого-либо события. Если в коде не предусмотрена обработка исключения, то программа прерывается и выводит сообщение об ошибке.

Существует три типа ошибок в программе:

Синтаксические - это ошибка в имени оператора или функции, отсутствие закрывающей или открывающей кавычек и т.д., т.е. ошибки в синтаксисе языка. Как правило, интерпретатор предупредит о наличии ошибки, а программа не будет выполняться совсем. Пример синтаксической ошибки.

>>> print "Нет завершающей кавычки!
SyntaxError: EOL while scanning string literal
Логические - это ошибка в логике работы программы, которые можно выявить только по результатам работы скрипта. Как правило, интерпретатор не предупреждает о наличии ошибки. А программа будет выполняться, т.к. не содержит синтаксических ошибок. Такие ошибки достаточно трудно выявить и исправить.

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

>>> def test(x, y): return x / y;
 
>>> test(4, 2)        # Нормально
2
 
>>> test(4, 0)        # Ошибка 
Traceback (most recent call last):
  File "", line 1, in 
    test(4, 0)
  File "", line 1, in test
    def test(x, y): return x / y;
ZeroDivisionError: integer division or modulo by zero
Необходимо заметить, что в языке Python исключения возбуждаются не только при ошибке, но и как уведомление о наступлении каких-либо событий. Например, метод index() возбуждается исключение ValueError, если искомый фрагмент ек входит в строку:

>>> "Строка".index("текст")
Traceback (most recent call last):
  File "", line 1, in 
    "Строка".index("текст")
ValueError: substring not found
Постоянно работать и быть в напряженном состоянии и программировать не всегда хорошо. Стоит научить себя расслабиться и посмотреть фильмы онлайн в хорошем качестве одному или с друзьями. Выберите свой любимый жанр и насладитесь фильмом.