Что такое исключение в Python?
Исключением является ошибка, которая возникает во время выполнения программы. Однако во время работы программы Python генерирует исключение, которое следует обработать, чтобы избежать сбоя вашей программы. В языке Python исключения запускаются автоматически при ошибках, или они могут быть вызваны и перехвачены вашим кодом.
Исключение указывает, что, хотя событие может произойти, событие такого типа происходит нечасто. Когда метод не может обработать исключение, он вызывается функцией вызова. В конце концов, когда исключение выдается из основной функции, программа внезапно завершается.
В этом уроке по исключительной обработке Python вы узнаете:
- Что такое исключение в Python?
- Типичные примеры исключений
- Почему вы должны использовать исключения?
- Правила исключений
- Исключительный механизм обработки
- Важные ошибки Python
- Другие важные исключения Python
- Ошибка и исключения
Типичные примеры исключений:
- Деление на ноль
- Доступ к файлу, который не существует.
- Добавление двух несовместимых типов
- Попытка получить доступ к несуществующему индексу последовательности
- Удаление таблицы с отключенного сервера базы данных.
- Снятие в банкомате более доступной суммы
Почему вы должны использовать исключения?
Вот причины использования исключений в Python:
- Обработка исключений позволяет вам отделить код обработки ошибок от обычного кода.
- Исключением является объект Python, который представляет ошибку.
- Как и в комментариях к коду, исключения помогают вам напомнить себе о том, что ожидает программа.
- Это разъясняет код и повышает удобочитаемость.
- Позволяет стимулировать последствия, поскольку обработка ошибок происходит в одном месте и одним способом.
- Исключением является удобный метод обработки сообщений об ошибках.
- В Python вы можете вызвать исключение в программе, используя метод повышения исключения.
- Возбуждение исключения помогает вам прервать текущее выполнение кода и возвращает исключение обратно в ожидание, пока оно не будет обработано.
- Обработка исключений для компонентов, которые не могут обрабатывать их напрямую.
Правила исключений
Вот несколько важных правил обработки исключений Python:
- Исключения должны быть объектами класса
- Для исключений класса вы можете использовать оператор try с предложением исключением, в котором упоминается конкретный класс.
- Даже если оператор или выражение синтаксически верны, он может отображать ошибку при попытке выполнить его.
- Ошибки, обнаруженные во время выполнения, называются исключениями, и они не являются безусловно фатальными.
Исключительный механизм обработки
Обработка исключений управляется следующими 5 ключевыми словами:
- пытаться
- поймать
- наконец-то
- бросать
Заявление Try
Оператор try включает ключевое слово try, за которым следует двоеточие (:) и набор кода, в котором могут возникать исключения. У него есть одно или несколько предложений.
Во время выполнения оператора try, если не возникло никаких исключений, интерпретатор игнорирует обработчики исключений для этого конкретного оператора try.
В случае, если какое-либо исключение возникает в наборе попыток, срок действия пробного комплекта истекает, и управление программой переходит к сопоставлению, за исключением обработчика, следующего за комплектом проб.
Syntax: try: statement(s)
Заявление о вылове
Блоки захвата принимают один аргумент за раз, что является типом исключения, которое он может перехватить. Эти аргументы могут варьироваться от определенного типа исключения, которое может быть изменено до всеобъемлющей категории исключений.
Правила для блока ловли:
- Вы можете определить блок catch, используя ключевое слово catch
- Параметр Catch Exception всегда заключен в скобки
- Он всегда представляет тип исключения, которое обрабатывает блок-обработчики.
- Код обработки исключений записан между двумя {} фигурными скобками.
- Вы можете разместить несколько блоков catch в одном блоке try.
- Вы можете использовать блок catch только после блока try.
- Весь блок catch должен быть упорядочен от подкласса до исключения суперкласса.
Пример:
try } catch (ArrayIndexOutOfBoundsException e) { System.err.printin("Caught first " + e.getMessage()); } catch (IOException e) { System.err.printin("Caught second " + e.getMessage()); }
Наконец-то блок
Наконец, блок всегда выполняется независимо от того, было ли выброшено исключение или нет. Ключевое слово final позволяет вам создать блок кода, следующий за блоком try-catch.
Наконец, пункт не является обязательным. Он предназначен для определения действий по очистке, которые должны выполняться при любых условиях.
try: raise KeyboardInterrupt finally: print 'welcome, world!' Output Welcome, world! KeyboardInterrupt
Наконец, предложение выполняется перед оператором try.
Поднятие заявления
Оператор подъема указывает аргумент, который инициализирует объект исключения. Здесь запятая следует за именем исключения и аргумент или кортеж аргумента, который следует за запятой.
Синтаксис:
raise [Exception [, args [, traceback]]]
В этом синтаксисе аргумент является необязательным, и во время выполнения значение аргумента исключения всегда равно none.
Пример:
Исключением Python может быть любое значение, например строка, класс, число или объект. Большинство из этих исключений, которые вызываются ядром Python, являются классами с аргументом, который является экземпляром класса.
Важные ошибки Python
Тип ошибки | Описание |
ArithmeticError | ArithmeticError действует как базовый класс для всех арифметических исключений. Поднимается за ошибки в арифметических операциях. |
ImportError | ImportError вызывается, когда вы пытаетесь импортировать модуль, которого нет. Такое исключение возникает, если вы допустили ошибку при вводе имени модуля или модуля, которого нет в стандартном пути. |
IndexError | Ошибка IndexError возникает, когда вы пытаетесь сослаться на последовательность, которая находится вне диапазона. |
KeyError | Когда определенный ключ не найден в словаре, возникает исключение KeyError. |
NameError | Ошибка NameE возникает, когда имя упоминается в коде, который никогда не существует в локальном или глобальном пространстве имен. |
ValueError | Ошибка значения возникает, когда функция или встроенная операция получает аргумент, который может иметь правильный тип, но не имеет подходящего значения. |
EOFError | Этот тип ошибки возникает, когда одна из встроенных функций (input () или raw_input ()) достигает условия EOF без чтения каких-либо данных. |
ZeroDivisonError | Этот тип ошибки возникает, когда деление или модуль на ноль происходит для всех числовых типов. |
IOError- | Этот тип ошибки возникает при сбое операции ввода / вывода. |
ошибка синтаксиса | SyntaxErrors возникает при возникновении ошибки в синтаксисе Python. |
IndentationError | Эта ошибка возникает, когда отступ не определен |
Другие важные исключения Python
исключение | Описание |
ArithmeticException | Арифметическая ошибка, такая как деление на ноль. |
ArraylndexOutOfBoundsException | Индекс массива выходит за пределы. |
ArrayStoreException | Назначение помогает вам для элемента массива несовместимого типа. |
ClassCastException | Неверный состав |
MlegalMonitorStateException | Неправильная работа монитора, как ожидание на разблокированном потоке. |
MlegalStateException | Среда или приложение находятся в неправильном состоянии. |
ClassNotFoundException | Класс не найден. |
CloneNotSupportedException | Попытка клонировать объект, который не реализует интерфейс Cloneable. |
Незаконное AccessException | Доступ к классу запрещен. |
InstantiationException | Происходит при попытке создания объекта интерфейса или абстрактного класса. |
CloneNotSupportedException | Попытка клонировать объект, который не реализует интерфейс. |
Ошибка и исключения
ошибка | Исключения |
Все ошибки в Java являются непроверенным типом. | Исключения включают как проверенный, так и непроверенный тип. |
Ошибки возникают во время выполнения, которые неизвестны компилятору. | Исключения можно исправить, обработав их с помощью блоков try-catch. |
Ошибки в основном вызваны средой, в которой запущено приложение. | Само приложение вызывает исключения. |
Примеры: Java.lang.StackoverflowError.java.lang.OutofMemoryError |
Примеры: отмеченные исключения, исключение SQL, исключение NullPointerException и т. Д. |
Резюме
- Исключением является ошибка, которая произошла во время выполнения программы.
- Исключение указывает, что, хотя событие может произойти, событие такого типа происходит нечасто.
- Типичные примеры исключений: 1) Деление на ноль, 2) Доступ к файлу, который не существует, 3) Добавление двух несовместимых типов.
- Исключением является объект Python, который представляет ошибку.
- Оператор try включает ключевое слово try, за которым следует двоеточие (:) и набор кода, в котором могут возникать исключения. У него есть одно или несколько предложений.
- Блоки захвата принимают один аргумент за раз, что является типом исключения, которое он может перехватить.
- Оператор подъема указывает аргумент, который инициализирует объект исключения.
- Наконец, блок всегда выполняется независимо от того, было ли выброшено исключение или нет.