Увод у руковање изузетком Питхон-а
Изузеци се третирају у питхону користећи двије главне технике, они су тврдња и руковање изузетком. Ми ћемо говорити о техникама руковања изузетком питона у овом поглављу
Сваки догађај који спречава нормално извршавање тока програма назива се изузетком. Испробајте блок задржава могуће генерирање кодова грешака Ред и редослед ових изузетака је процес који изводи изузев блока који је убачен на крају сваког покушајног блока. Један покушајни блок може да асоцира више од једног изузетка у одређено време док други блок спада под уобичајени одељак програмског тока. Сав код у коме није потребна заштита блока смешта се у други блок програма.
Синтакса:
try: Executes when suspicious code is executed
except Exception1: Executed when
exception 1 is raised
except Exception2: Executed when exception 2 is raised
else: If there is no exception then execute this block
Стандардна листа изузетака
Изузетак: Основна класа свих изузетака
СтопИтератион: када ни један објекат није показан следећом методом итератора, поставља се овај изузетак
СистемЕкит: Подигнут кроз функцију сис.екит ().
СтандардЕррор: Осим СтопИтератион и СистемЕкит, ово делује као основна класа за све уграђене функције.
АритхметицЕррор: За све нумеричке грешке ове изнимке дјелују као основна класа.
ОверфловЕррор: За нумерички тип ако израчунавање прелази максималну могућу вредност, тада се та грешка подиже.
ФлоатингПоинтЕррор: неуспех у операцији флоат покреће ову грешку
ЗероДивисионЕррор: Поставља се када се у коду догоди подјела на нулу
АссертионЕррор: Када изјава тврдња не успе тада се активира ова грешка
АттрибутеЕррор: Када додјељивање или референца атрибута не успију, тада се појављује ова грешка
ЕОФЕрроР: Појављује се када се више не постигне било који од функција и краја датотеке
ИмпортЕррор: повисује се док се не декларише увоз.
КеибоардИнтеррупт: Појављује се када дође до прекида у извршавању програма
ЛоокупЕррор: Све грешке приликом претраживања спадају у ову базну класу
ИндекЕррор: Повисује се када индекс није пронађен
КеиЕррор: Поставља се када речник не садржи поменуту кључну вредност
НамеЕррор: Подигнут је због недостајућег идентификатора локално или глобално у програму
УнбоундЛоцалЕррор: Повећава се када се користи локална варијабла, а да јој није додељена ниједна вредност.
ЕнвиронментЕррор: Базна класа за грешке оријентисане према окружењу које се јављају изван питхона
ИОЕррор: Појављује се док процес уноса / излаза није успешан
СинтакЕррор: Изузетак се обрађује са свим грешкама оријентисаним у синтакси
ИндентатионЕррор: Неправилна увлачења довешће до ове врсте грешака
СистемЕррор: То се дешава у ситуацији када преводилац не ради како се очекује, али ова грешка не чини да питхон програм изађе из извршења
СистемЕкит: Када функцију сис.екит () користи тумач питхон-а, онда то води овом изузетку. због тога се код ненормално прекида када се са њим не рукује правилно.
ТипеЕррор: Када је операција неваљана за одређени тип података, онда се тражи та грешка
ВалуеЕррор: Када функција садржи ваљани аргумент типа, али је за тај аргумент аргументована непримјерена вриједност
РунтимеЕррор: Ако ниједна од наведених категорија није задовољена, тада се појављује ова грешка
НотИмплементедЕррор: Направљен док нефигуративни метод који се жели применити у пракси у наслеђеној класи у ствари није имплементиран. Ред и редослед ових изузетака је процес који изводи изузев блока који је убачен на крају сваког покушајног блока.
Процес руковања изузетком у Питхон-у
- Осим клаузуле са више изузетака
- Осим клаузуле која није наведена без изузетка
- Осим клаузуле са аргументима
У наставку ћемо говорити о процесу руковања изузетцима у Питхону
1. Изузев клаузуле са вишеструким изузецима
То омогућава да се више изузева осим једне изјаве декларише у једној осим клаузуле и сви ови декларисани изузеци могу се подићи из ове осим клаузуле
Синтакса:
try: Code block1
except(Exception1(, Exception2(, …ExceptionN)))):
Executes when one among the exception happens
else: Executed when no exception is raised
2. Изузев клаузуле без изузетка
Овде се могу обрадити сви изузеци покренути из блока проба.
Синтакса:
try:
Code block1
except:
Executes if any type of exception happens
else:
If there is no exception then execute this block
3. Осим клаузуле са аргументима
Стварни узрок изузећа чува се у вредности аргумента
Синтакса:
try:
Code block1except
ExceptionType, Argument:
Argument value is printed here
4. Програм за обраду изузетака
Синтакса:
try:
fh = open("testfile1", "w")
try:
fh.write("Exception handeling")
finally:
print "Going to close the file"
fh.close()
except IOError:
print "Error: can\'t find file or read data"
Закључак
Сваки програмски језик држи процес подизања изузетака кад год се суочи са неочекиваним низом ситуација и питон је један од њих који производи дубоке технике за руковање овим изузецима што га чини јаким основним програмским језиком.
Препоручени чланак
Ово је водич за руковање изузетком Питхон-а. Овде смо расправљали о стандардној листи изузетака и процесу, заједно са синтаксом. Можете и да прођете кроз друге наше предложене чланке да бисте сазнали више -
- Предности Питхона
- Питхон Фрамеворкс
- Узорци у Питхон-у
- Питхон Цомпилерс
- Руковање изузецима у ВБ.НЕТ-у (примери)
- Речник у Питхон-у
- ВБ.Нет Евентс