Изключение за Python Throw

Python Throw Exception



По време на изпълнение на програмата се появява изключение и променя нормалния си поток поради грешка. Изключение възниква поради грешка. Основната причина за изключение е логическа грешка. Подобно на много други езици за програмиране, Python предоставя няколко вградени изключения, т.е. ZeroDivisionError, ImportError, EOFError и др .; например изключението ZeroDivisionError се повдига, когато числото е разделено на нула. Изключенията на Python се обработват от оператора try. Дефинираме блок try и поставяме уязвимия код в този блок, което може да предизвика изключение. След това, след try блока, ние дефинираме блок с изключение за справяне с изключението. Освен всички тези вградени изключения, понякога трябва да повдигнем или хвърлим изключение, когато срещнем конкретна ситуация. Разработчикът на Python може лесно да създаде дефинирано от потребителя изключение. Ние използваме повишаване ключова дума за повдигане или хвърляне на изключение. Тази статия обяснява използването на ключови думи за повишаване на Python за хвърляне на изключението с примери.







Синтаксис

Синтаксисът за хвърляне на изключение е много ясен и както следва:



ПовдигнетеИзключение(всякаквисъобщение)

След като напишете ключовата дума raise, дефинирайте вашето изключение.



Пример за обработка на изключения

Първо, нека да видим пример за блок try-except, който показва как можем да се справим с вграденото изключение на Python, а след това ще видим някои примери за хвърляне или повдигане на изключения на Python. В примера, даден по -долу, ние създадохме две променливи. Стойността на втората променлива е равна на нула. Когато разделим num1 с num2, той ще покаже ZeroDivisionError. Кодът за разделяне ще хвърли изключение; следователно, той се поставя вътре в блока try. Блокът изключение улавя изключението и отпечатва съобщението Възникна неочаквана грешка.





#деклариране на числова променлива
номер1=двайсет
#деклариране на втора числова променлива
номер2=0
#имплементиране на блока try
опитвам:
резултат=num1/num2
с изключение:
печат('Възникна неочаквана грешка')

Изход



Посочете пример за изключение

Нека сега разберем чрез примери как можем да създадем или повдигнем изключение, като използваме ключовата дума raise. В дадения пример издигаме изключение, когато числото е разделено на всяко отрицателно число.

#деклариране на числова променлива
номер1=двайсет
#деклариране на втора числова променлива
номер2=-10
ако(номер2<0):
#издигане на изключение
повишаване Изключение(„Числото 2 не трябва да бъде отрицателно число“)
иначе:
резултат=num1/num2
печат(резултат)

Изход

Изходът показва, че изключението Числото 2 не трябва да бъде отрицателно число се повдига.

Можем също да дефинираме вида на грешката. Нека го разгледаме.

#деклариране на числова променлива
номер1=двайсет
#деклариране на втора числова променлива
номер2=-10
ако(номер2<0):
#издигане на изключение
повишаване TypeError(„Грешка с отрицателно число“)
иначе:
резултат=num1/num2
печат(резултат)

Изход

В дадения пример грешката на типа е дефинирана и тя отпечатва съобщението на конзолата, че това е грешка с отрицателно число.

Нека видим друг пример за хвърляне на изключение на Python. В дадения пример, ако списъкът съдържа някаква нецелочислена стойност, тогава програмата изхвърля изключение.

#деклариране на списък
my_list=[1,2,3,7.7,'xyz']
#имплементиране на цикъл for
заiвmy_list:
#проверка на типа на всеки елемент от списъка
ако не Тип(i) е int:
#изхвърляне на изключение, ако типът на елемента не е цяло число
повишаване Изключение(„Списъкът съдържа нецелочислена стойност“)
иначе:
печат(i)

Изход

Заключение

Изключението променя нормалния поток на програма по отношение на грешка. В Python можем да хвърлим изключение, което е дефинирано от потребителите. За да хвърлим изключението, използваме вградената ключова дума за повишаване на Python. Тази статия обяснява концепцията за хвърляне на изключения с примери.