Рубрики
Без рубрики

Как игнорировать исключения Pythonic Way?

Если вы являетесь разработчиком приложений, вам может придеться реализовать код без ошибок, который хорошо проверен. В моих случаях мы хотели бы игнорировать ввод / вывод или числовые исключения. В этом сообщении вы узнаете, как мы можем смело игнорировать исключения в Python. https://youtu.be/73kfld0e4dw Представьте, что вы работаете над приложением, где вы … Как игнорировать исключения Pythonic Way? Читать далее “

Автор оригинала: Neeraj Sujan.

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

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

Мы можем достичь этого следующими двумя шагами

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

Без пробного блока

Сначала сначала реализуйте логику, используя простоту для цикла. Как вы можете видеть на выходе ниже, программа разбилась, когда число было 0

numbers = [12, 1, 0, 45, 56]
for number in numbers:
    print('result is {}'.format(1/number))

Выход

result is 0.08333333333333333
result is 1.0

---------------------------------------------------------------------------
ZeroDivisionError                         Traceback (most recent call last)
 in ()
      1 for number in numbers:
----> 2   print('result is {}'.format(1/number))

ZeroDivisionError: division by zero

С пробным замком

Давайте теперь посмотрим, как мы можем смело игнорировать исключение

numbers = [12,1,0,45,56]
for number in numbers:
    try:
        print('result is {}'.format(1/number))
    except Exception as e:
        print('Ignoring Exception', e)

Выход

result is 0.08333333333333333
result is 1.0
Ignoring Exception division by zero
result is 0.022222222222222223
result is 0.017857142857142856

Резюме

В этом блоге вы узнали, как безопасно игнорировать исключения в Python. Вы узнали, как использовать попытку и кроме блокировки и продолжить программу, если исключение встречается.