Python getattr ()

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 funnet
  • AttributeErrorunntak, hvis navngitt attributt ikke blir funnet og defaultikke 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 AttributeErrorordtak at objektet ikke har noen attributt for sex.

Interessante artikler...