Getattr () -metoden returnerer verdien til det navngitte attributtet til et objekt. Hvis den ikke blir funnet, returnerer den standardverdien som er gitt til funksjonen.
Syntaksen for getattr()
metoden er:
getattr (objekt, navn (, standard))
Syntaksen ovenfor tilsvarer:
objekt.navn
getattr () Parametere
getattr()
metoden tar flere parametere:
- objekt - objekt hvis navn på attributtets verdi skal returneres
- navn - streng som inneholder attributtets navn
- standard (Valgfritt) - verdi som returneres når det navngitte attributtet ikke blir funnet
Returverdi fra getattr ()
getattr()
metoden returnerer:
- verdien av det navngitte attributtet til det gitte objektet
default
, hvis ingen navngitte attributter blir funnetAttributeError
unntak, hvis navngitt attributt ikke blir funnet ogdefault
ikke er definert
Eksempel 1: Hvordan fungerer getattr () i Python?
class Person: age = 23 name = "Adam" person = Person() print('The age is:', getattr(person, "age")) print('The age is:', person.age)
Produksjon
Alderen er: 23 Alderen er: 23
Eksempel 2: getattr () når navngitt attributt ikke blir funnet
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'))
Produksjon
Kjønnet er: Male AttributeError: 'Person' objekt har ingen attributt 'sex'
Det navngitte attributtkjønnet er ikke tilstede i klassen Person. Så når du ringer til getattr()
metode med en standardverdi Male
, returnerer den Male.
Men hvis vi ikke oppgir noen standardverdi, når det navngitte attributtkjønnet ikke blir funnet, gir det et AttributeError
ordtak at objektet ikke har noen attributt for sex.