Метода гетаттр () враћа вредност именованог атрибута објекта. Ако није пронађена, враћа задану вредност која је дата функцији.
Синтакса getattr()
методе је:
гетаттр (објект, име (, подразумевано))
Горња синтакса је еквивалентна:
објецт.наме
параметри гетаттр ()
getattr()
метода узима више параметара:
- објект - објекат чија се вредност именованог атрибута треба вратити
- наме - низ који садржи име атрибута
- дефаулт (Опционално) - вредност која се враћа када именовани атрибут није пронађен
Повратна вредност из гетаттр ()
getattr()
метода враћа:
- вредност именованог атрибута датог објекта
default
, ако није пронађен ниједан именовани атрибутAttributeError
изузетак, ако именовани атрибут није пронађен иdefault
није дефинисан
Пример 1: Како гетаттр () ради у Питхону?
class Person: age = 23 name = "Adam" person = Person() print('The age is:', getattr(person, "age")) print('The age is:', person.age)
Оутпут
Старост је: 23 Старост је: 23
Пример 2: гетаттр () када именовани атрибут није пронађен
class Person: age = 23 name = "Adam" person = Person() # when default value is provided print('The sex is:', getattr(person, 'sex', 'Male')) # when no default value is provided print('The sex is:', getattr(person, 'sex'))
Оутпут
Пол је: Мушкарац АттрибутеЕррор: „Персон“ објекат нема атрибут „сек“
Именовани атрибут пол није присутан у класи Особа. Дакле, када позива getattr()
метод са подразумеваном вредношћу Male
, он враћа Мале.
Али, ако не пружимо никакву подразумевану вредност, када именовани атрибут сек не буде пронађен, подиже се AttributeError
изрека да објекат нема атрибут сек.