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

Python Try, кроме обработки исключений

Попробуйте, за исключением двух важных блоков обработки исключений, они полезны для предотвращения непедеди … Tagged с Python, Django, WebDev.

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

Некоторые примеры ошибок

>>> 1/0
#PYTHON OUPUT
Traceback (most recent call last):
File "", line 1, in 
ZeroDivisionError: division by zero

>>> x/5
#PYTHON OUPUT
Traceback (most recent call last):
File "", line 1, in 
NameError: name 'x' is not defined

ZerodivisionError вызвано, когда число разделено на ноль. NameError вызвано как переменная x не был инициализирован. Вы узнаете больше о них в приведенных ниже примерах.

Создание попытки, кроме блока,

Начнем с указания попробуйте блокировать И внутри он будет запускать программный код. В кроме Блок будет печатать или журнал. Исключение произошло при тестировании кода.

Примечание. Исключение имеет разные типы, которые вы узнаете в этом учебном пособии.

try:
    a=10
    b='12'
    c=a+b
    print("Result {}".format(c))
except:
    print("Exception has occured while adding two numbers")

#PYTHON OUTPUT
Exception has occured while adding two numbers

В приведенном выше сценарии мы проверяем операцию добавления. Но вы можете заметить, что в блоке Try мы предпринимаем добавление по номеру, а другая – это строка, поэтому, когда мы запустим код, мы получим ошибку, и блок Try передаст ошибку, кроме блока, чтобы обрабатывать ее более изящным образом, только если Ошибка произошла еще, пропустит этот шаг. Мы также можем цепорить кроме блокировать несколько раз

try:
    a=10
    b='12'
    c=a+b
    print("Result {}".format(c))
except NameError:
    print("Variable is not defined")
except ZeroDivisionError:
    print("Error while trying to divide by Zero")
except TypeError:
    print("Unsupported Operands.")  

#PYTHON OUTPUT
Unsupported Operands.

Обрабатывать более одного исключения

try:
    a=21
    b=0
    c=a/b
    print(c)
except NameError as n:
    print("Variable is not defined n message : {}".format(n))
except ZeroDivisionError as z:
    print("Error while trying to divide by Zero n message : {}".format(z))
except TypeError:
    print("Unsupported Operands n message : {}".format(z))  

#PYTHON OUTPUT
Error while trying to divide by Zero 
    message : division by zero

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

try:
    a=21
    b=0
    c=a/c
    print(c)
except (NameError, ZeroDivisionError, TypeError):
    print('Error has occured.')

#PYTHON OUTPUT
Error has occured.

Попробуйте кроме и наконец

Наконец, является необязательным оператором в блоке Try-Except. Это выполняется каждый раз, когда выполняется оператор try-except, даже если произошла ошибка.

try:
    a=21
    b=0
    c=a/b
    print(c)
except:
    print("Exception has occured.")
finally:
    print("Finally block is executed every time try...except block is executed.")

#PYTHON OUTPUT
Exception has occured.
Finally block is executed every time try...except block is executed.

Повышение исключений

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

Повышение исключения с использованием оператора повышения

В этом примере мы выразим ошибку без оператора Try-Except.

a = None
if a != None:
    print("exists")
else:
    raise Exception("Variable is not defined.")

#PYTHON OUTPUT
Traceback (most recent call last):
File "main.py", line 6, in 
    raise Exception("Variable is not defined.")
Exception: Variable is not defined.

Эта статья была взята из Попробуйте, кроме обработки исключений в Python

Справочные сообщения

  • Python JSON MODULE
  • Работа с классами и объектами Python

Оригинал: “https://dev.to/pavanbaddi/python-try-except-exception-handling-3d05”