logo

АттрибутеЕррор у Питхон-у

Шта је грешка?

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

АссертионЕррор:

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

ИмпортЕррор:

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

ИндекЕррор:

Појављује се када је за било коју секвенцу њен индекс изван опсега.

КеиЕррор:

Ова грешка се јавља у Питхон-у када не можемо да пронађемо ниједан кључ у речнику.

НамеЕррор:

До ове грешке може доћи када не пронађемо ниједну променљиву у локалном или глобалном опсегу.

Грешка у раду:

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

ИндентатионЕррор:

Када користимо погрешно увлачење у Питхон коду, појавиће се грешка ИндентатионЕррор.

Грешка у систему:

Када постоји интерна грешка, онда ће тумач бити покренут СистемЕррор.

УницодеЕррор:

Када дође до грешке кодирања или декодирања у вези са Уницоде-ом и УницодеЕррор ће се појавити.

ВалуеЕррор:

Када у функцији прослеђујемо исправан аргумент према типу података, али вредност није исправна, онда се грешка која се догодила назива ВалуеЕррор.

шта је хибернација

ЗероДивисионЕррор:

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

ЕОФЕгрешка:

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

Овај чланак је углавном посвећен АттрибутеЕррор.

Шта је АттрибутеЕррор?

Ова грешка се јавља у програму када дође до грешке у условљавању у додели атрибута. На пример, ако целобројној променљивој доделимо неку вредност и ако покушамо да користимо било коју функцију низа из те променљиве, то ће подићи АттрибутеЕррор.

Разлог за АттрибутеЕррор у Питхон-у можемо разумети на следећим примерима:

Пример 1:

Када применимо функцију на други тип података што није могуће

 a=15 a.append('javatpoint') 

Излаз:

АттрибутеЕррор у Питхон-у

Објашњење:

У горњем коду имамо једну целобројну променљиву и иницијализовали смо је са вредношћу 15. Сада, ако користимо функцију додавања на променљивој а, она ће дати АттрибутеЕррор, што каже да не постоји атрибут као додатак у целобројном типу података.

Пример 2:

Постоје шансе за АттрибутеЕррор у погрешном писању атрибута.

 string = 'you will learn each coding tutorial from '.fst('Javatpoint') print(string) 

Излаз:

АттрибутеЕррор у Питхон-у

Објашњење:

У горњем коду имамо стринг атрибут и примењујемо фст атрибут, тако да ће бити АттрибутеЕррор да овај атрибут не постоји за променљиву.

Пример 3:

Можемо добити АттрибутеЕррор ако покушамо да направимо погрешну референцу за било коју променљиву класе.

 class Javatpoint(): def __init__(self): self.var1 = 'This is for JavatPoint' obj = Javatpoint() print(obj.var1) print(obj.var2) 

Излаз:

АттрибутеЕррор у Питхон-у

Објашњење:

У горњем коду имамо класу, а постоји и променљива под називом вар1. Креирамо објекат класе и грешком референцирамо погрешну променљиву вар2 те класе која чак и не постоји, тако да ће дефинитивно бити АттрибутеЕррор.

Решење за решавање грешке или изузетка:

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

Пример 4:

 class Javatpoint(): def __init__(self): self.var1 = 'This is for javatpoint' obj = Javatpoint() try: print(obj.var1) print(obj.var2) except AttributeError: print('There is no such attribute') 

Излаз:

АттрибутеЕррор у Питхон-у

Објашњење:

У горњем коду имамо класу и променљиву под називом вар1. У наредби три покушавамо да референцирамо вар1 и вар2. Моћи ћемо да дереференцирамо вар1 и одштампаћемо изјаву за њу, али ћемо добити АттрибутеЕррор за референцирање вар2. Дакле, програм ће ући у блок осим, ​​а ми ћемо одштампати изјаву која је написана само за услов грешке.