Питхон АссертионЕррор

Pithon Assertionerror



Када Питхон програм наиђе на неочекивани услов током покретања, програм зауставља извршење и враћа изузетак. У Питхон-у, изузеци и синтаксичке грешке су две главне категорије грешака. Када део Питхон кода који је синтаксички валидан створи грешку, то је познато као подизање изузетка/грешке. Порука о грешци у последњем реду дефинише прецизан тип изузетка и пружа опис који ће помоћи у отклањању грешака, а стрелица показује на линију или локацију где је дошло до изузетка. Хватање изузетака и управљање њима је кључно да бисте избегли изненадни пад програма. Користите другачији начин да извршите код. На пример, када се појави наведени изузетак. Овај водич ће говорити о АссертионЕррор и како можете да је решите у Питхон-у.

Шта је АссертионЕррор у Питхон-у?

Грешке при тврдњи су концепт програмирања који се јавља када програмер напише или креира блок кода који се користи за декларисање критеријума или услова који треба да буду задовољени пре него што се модул покрене. Као и свака Питхон грешка, контрола се преноси на следећу линију кода ако је услов наведен када је тврдња проглашена истинитом. Ако је нетачно, са друге стране, јавља се грешка или изузетак и програм се зауставља. Наредба ассерт се може користити у различитим програмским језицима са њиховом специфичном синтаксом јер је независна од језика. То је поткласа или инстанца класе Екцептион. Питхон АссертионЕррор има следећу синтаксу:

Синтакса: потврди услов, порука о грешци (опционално)







Пример

Унећемо старост особе као унос, а ако је мање од нуле, конзола ће покренути грешку при тврдњи.





Сада, шта ако унесемо узраст мање од 0?





Отклањање грешака у коду помоћу ове методе је једноставније, што олакшава проналажење грешака и исправљање грешака у програму.



Како АссертионЕррор функционише у Питхон-у

Језик Питхон укључује наредбу ассерт која се може користити за генерисање једноставних излазних порука о грешци са логичким тврдњама. Када изјава за тврдњу не успе, покреће се „изузетак“ АссертионЕррор. У Питхон-у, класе изузетака су изведене из класе БасеЕкцептион. Класа БасеЕкцептион, која је такође основна класа класе АссертионЕррор, је место одакле потиче класа Екцептион. Увек би требало да постоји одговарајући код за обраду изузетака који ће се бавити неуспехом изјаве ассерт кад год се она користи. Подразумевани обрађивач изузетака у Питхон-у ће одштампати поруку о грешци коју је написао програмер, али грешка такође може да се обради или реши без поруке о грешци.

Имплементација АссертионЕррор у Питхон-у

Следи неколико примера АссертионЕррор у Питхон-у:

Пример

У овом примеру, написаћемо Питхон програм да прикаже АссертионЕррор у програму који проналази област круга.

Вредност полупречника „р“ се прослеђује као улаз у функцију у претходном програму која је креирана да пронађе површину круга. Наредба ассерт се затим користи да би се утврдило да ли је испоручена вредност или полупречник „р“ испод нуле, а ако му се достави негативна вредност, биће подигнут изузетак. Површина круга ће бити враћена на основу вредности полупречника „р“ достављене функцији. Прво, функција се извршава са вредношћу р као 3. Функција се затим извршава са вредношћу 2.5. АссертионЕррор се јавља када користимо негативну вредност „р“, тј. „-1“.

Покушајмо са другим примером да прикажемо појаву грешке у тврдњи.

Пример

У овом примеру, програм ће одредити да ли је вредност имениоца различита од нуле.

Порука о грешци у вези са тврдњом се приказује у претходном програму. Направили смо две променљиве (а и б), а целобројне вредности одређују променљиве. Друга променљива, тј., б се затим тестира да би се видело да ли није једнака 0 помоћу изјаве ассерт. У супротном наведеном, порука о грешци се штампа. Ако није, приказује се резултат дељења првог броја са другом вредношћу. На претходној слици је приказан резултат програма.

Примене АссертионЕррор

Остале корисне употребе грешке тврдње укључују:

  • Тврдња помаже у процени вредности параметара
  • Тврдње помажу у надгледању типа уноса и да ли је та вредност важећа
  • Поред тога, тврдње помажу у идентификацији да ли други програмер кода злоупотребљава интерфејс
  • Тврдње помажу у континуираном праћењу резултата програма

Како можемо да избегнемо грешке Ассерт у Питхон-у

  1. Ознака -О у Питхон програму може се користити за онемогућавање сваке изјаве. Важно је имати на уму да се искази који долазе након изјаве тврдње неће извршити ако онемогућимо изјаве тврдње.
  2. Променљива окружења такође може поставити заставицу за искључивање исказа тврдње. Ова ситуација утиче на све процесе и апликације које користе или наслеђују окружење.
  3. У Питхон-у, најједноставнији приступ за спречавање грешака у тврдњи је руковање њима ручно. Ако осигурамо да је контролни ток програма преусмерен тако да не приступа исказима ассерт, онда нема шансе за грешке у тврдњи.

Руковање АссертионЕррор

Поред исказа тврдње, такође можемо да обрадимо грешку тврдње користећи следеће методе:

Руковање грешком тврдње помоћу блокова Три-Екцепт

Наредба ассерт одређује да ли су вредности једнаке. Блок три изазива грешку АссертионЕррор јер ови цели бројеви нису једнаки. Команда за штампање се извршава након што блок осим ухвати изузетак. Овде се приказује излаз изјаве за штампање из блока изузетака. Кључна реч подизања може да се користи за поновно подизање грешке у блоку осим како бисмо могли да утврдимо извор изузетка. Када дође до изузетка, кључна реч „подигни“ ће покренути грешку и завршити програм. Помаже у одржавању или вођењу евиденције/праћења постојећег изузетка.

Руковање АссертионЕррор помоћу модула трацебацк

Када код садржи неколико изјава ассерт, модул праћења помаже у идентификацији тачног извора грешке.

Користећи модул за праћење, наша изјава за штампање се може написати са чуварима места {}.

Поред тога, можемо да дефинишемо друге променљиве за чување позиције линије, име датотеке, назив методе, као и текст/поруку где је дошло до изузетка.

Објекат праћења се назива „тб“. Користимо два чувара места: један за текст и један за позицију реда у изјави за штампање.

Три компоненте наредбе „раисе“ — екц_типе, екц_трацебацк и екц_валуе — враћа функција сис.екц_инфо().

Управљање грешком АссертионЕррор помоћу изјаве за штампање

Да бисмо ручно обрадили изузетак, можемо да користимо изјаву „принт“ унутар блока осим.

Изјава за штампање штампа сваку поруку о грешци коју корисник унесе. Са овом методом, техничка грешка неће бити забринута за корисника.

Уместо грешке, приказује се кратка порука.

Закључак

У овом посту смо први пут видели увођење изузетака у Питхон-у. Разговарали смо о АссертионЕррор-у, како он функционише и како можемо да имплементирамо АссертионЕррор у Питхон-у. Објаснили смо неколико предности АссертионЕррор и како их можемо избећи. У последњем одељку овог поста видели смо како можемо да се носимо са грешком АссертионЕррор у Питхон-у помоћу блокова Три-Екцепт, модула трацебацк и наредбе за штампање.