Python getattr ()

Metoden getattr () returnerer værdien af ​​den navngivne attribut for et objekt. Hvis den ikke findes, returnerer den standardværdien til funktionen.

Syntaksen for getattr()metoden er:

 getattr (objekt, navn (, standard))

Ovenstående syntaks svarer til:

 objekt.navn

getattr () Parametre

getattr() metoden tager flere parametre:

  • objekt - objekt, hvis navngivne attributs værdi skal returneres
  • navn - streng, der indeholder attributens navn
  • standard (Valgfri) - værdi, der returneres, når den navngivne attribut ikke findes

Returneringsværdi fra getattr ()

getattr() metode returnerer:

  • værdi af den navngivne attribut for det givne objekt
  • default, hvis der ikke findes nogen navngivet attribut
  • AttributeErrorundtagelse, hvis den navngivne attribut ikke findes og defaultikke er defineret

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)

Produktion

 Alderen er: 23 Alderen er: 23 

Eksempel 2: getattr () når navngivet attribut ikke findes

 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'))

Produktion

 Køn er: Mand AttributError: 'Person' objekt har ingen attribut 'sex' 

Det navngivne attributkøn er ikke til stede i klassen Person. Så når man kalder getattr()metode med en standardværdi Male, returnerer den Mand.

Men hvis vi ikke angiver nogen standardværdi, når det navngivne attributkøn ikke findes, rejser det et AttributeErrorordsprog, objektet har ingen sexattribut.

Interessante artikler...