Планы — это мечты знающих людей (Э. Фейхтерслебен).

Как лучше всего использовать Try Except в Python – Специально для начинающих

FavoriteLoadingДобавить в избранное
1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (1 оценок, среднее: 5,00 из 5)
Загрузка...
Как лучше всего использовать Try Except в Python - Специально для начинающих
В программировании на Python, обработка исключений позволяет программисту включить управление потоком. Он не имеет встроенные исключения, чтобы поймать ошибки в случае, если ваш код останавливается. Использование try-except является наиболее распространенным и естественным способом обработки неожиданных ошибок наряду со многими другими конструкциями обработки исключений. В этой статье вы узнаете как использовать некоторые из лучших методов, использовать try-except в Python.

Обработка ошибок или обработка исключений в Python может быть обеспечена путем создания исключений. С помощью использования блока try, вы можете реализовать исключение и обработать ошибку внутри блока except. Всякий раз когда код ломается внутри блока try, регулярный поток кода остановится и управление получает блок except для обработки ошибки.

Зачем использовать классы Try-Except/Try-Except-else? С помощью try-except и try-except-else, вы можете избежать многих неизвестных проблем которые могут возникнуть из вашего кода. Например, в коде Python с использованием LBYL (Посмотрите прежде чем заходить в цикл) стиль может привести к условиям гонки. Здесь, класс try-except может прийти, чтобы спасти вас. Кроме того, есть случаи когда ваш код зависит от некоторой информации которая может устареть до того времени вы получите его. Например, код делает вызовы os.path.exists или Queue.full, которые могут возвращать данные которые становятся устаревшими к тому времени, когда вы их используете. Мудрый выбор здесь будет следовать try-except в вашем коде для управления выше случаев более надежно.

Повышение исключений также допустимо в Python. Это означает вы можете бросить или вызвать исключение когда это необходимо. Вы можете сделать это просто вызывая [raise Exception(‘Test error!’)] из вашего кода. После как подняли, исключение прекратит выполнение текущего кода как обычно и будет идти дальше в стеке вызовов до тех пор пока обрабатывается.

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

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

Python: Советы по использованию Try-Except, Try-Except-Else и многое другое

1. Как обрабатывать произвольное исключение

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

Это легко достижимо с помощью исключений Python. Проверьте код, приведенный ниже. Во время тестирования, вы можете поместить код внутри блока try в приведенном ниже примере.
Python

 

Вернуться к началу

2. Поймать несколько исключений в одном блоке Except

Вы можете поймать несколько исключений в одиночном блока Except. Смотрите пример ниже.

Python

 

Обратите внимание, что вы можете отделить исключения от переменных с запятой, которая применима в Python 2.6/2.7. Но вы не можете сделать это в Python 3. Таким образом, вы должны предпочесть использовать ключевое слово [as].

Вернуться к началу

3. Обработка нескольких исключений с одним блоком Except

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

Python

 

Следующий метод для обработки каждого исключения в выделенном блоке Except. Вы можете добавить столько, сколько надо блоков Except по мере необходимости. Смотрите пример ниже.
Python

 

Последнее, но не в последнюю очередь является использование только без упоминания какого-либо атрибута except.

Python

Вернуться к началу

4. Повторное повышение исключения в Python

Исключения продолжают двигаться до методов, пока они не обработаны. Хотя можно добавить, за исключением пункта, который мог бы просто иметь вызов [raise] без каких-либо аргументов. Это будет приводить к исключению.

Смотрите ниже пример кода.

Python

 

Вывод:

Python

 

Вернуться к началу

5. Когда использовать предложение else

Используйте класс else сразу после блока try-except. Предложение else будет попасть только если исключение не генерируется. Заявление else должно всегда предшествовать блоку except.

В блоке else, вы можете добавить код, который должен работать, когда не произошло никаких ошибок.

Смотрите пример ниже. В этом примере вы можете увидеть цикл при запуске бесконечно. Код запрашивает ввод пользователя, а затем разбор его с помощью встроенной функции [Int ()]. Если пользователь вводит нулевое значение, то, за исключением блока будет получить удар. В противном случае код будет проходить через блок else.

Python

 

Вернуться к началу

6. Используйте [class Finally]

Если у вас есть код, который вы хотите запустить во всех ситуациях, а затем записать его внутри [finally block]. Python всегда будет обрабатывать инструкции, закодированные в [finally clause]. Это самый распространенный способ ведения очистки задач. Вы также можете убедиться, что очистка проходит.

Ошибка поймана в классе try. После того, как код в блоке except запускается на выполнение, инструкции в [finally clause]  будут работать.

Обратите внимание, что [finally clause] ВСЕГДА будет работать, даже если вы вернулись вперед.

Смотрите пример ниже.

Python

 

Вывод:

Python

Вернуться к началу

7. Используйте ключевое слово catch, чтобы поймать определенные типы исключений

С помощью <identifier>, вы можете создать новый объект. И вы можете также создать объект исключения. Здесь, в приведенном ниже примере, мы создаем объект IOError, а затем используем его в предложении.

Python

 

Вывод:

Python

 

Вернуться к началу

8. Лучшая практика для ручного подъема исключения

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

Плохой пример.

Python

 

Вывод:

Python

 

Лучшая практика:

Здесь мы поднимаем определенный тип исключения, а не один общий. И мы также используем опцию ARGS для печати неправильных аргументов, если есть. Давайте посмотрим на пример ниже.

Python

 

Вывод:

Python

Вернуться к началу

9. Как пропустить через ошибку и продолжить выполнение

В идеале, вы не должны делать это. Но если вы все таки еще хотите это сделать, то затем выполните следующий код, чтобы проверить правильный подход.

Python

 

Вывод:

Python

 

Вернуться к началу

Теперь посмотрим на некоторые из наиболее распространенных исключений Python и их примеры.

Большинство ошибок общего исключения

  • IOError – Эта ошибка происходит когда файл не открывается.
  • ImportError – Если модуль Python не может быть загружен или найден.
  • ValueError – Это происходит если функция получает аргумент правильного типа но неподходящего значения.
  • KeyboardInterrupt – Получает удар когда пользователь вводит символ прерывания (т.е. клавиши Control-C или Del)
  • EOFError – Получает повышение если входные функции (input()/raw_input()) вызвали конца-файла условие (EOF) но без чтения каких либо данных.

Вернуться к началу

Примеры наиболее распространенных исключений

Python

 

Вернуться к началу

Резюме – как наилучшим образом использовать исключение Try-Except Python

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

В любом случае, все это может быть обработано, если в вашем коде использовать обработки исключений и реализовать их с конструкциями, try-except, или tr-except-else, try-except-finally. Надеюсь, вам понравилась наша статья.

Читайте также

Добавить комментарий

Войти с помощью: 

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Простая логическая игра "Поймай кота". Задача игры окружить кота точками так, чтобы он не смог убежать с поля. Постигла неудача - начни игру снова!

Заполните форму и наш менеджер перезвонит Вам в самое ближайшее время!

badge
Обратный звонок 1
Отправить
galka

Спасибо! Ваша заявка принята

close
galka

Спасибо! Ваша заявка принята

close