Python getattr ()

Metóda getattr () vracia hodnotu pomenovaného atribútu objektu. Ak sa nenájde, vráti predvolenú hodnotu poskytnutú funkcii.

Syntax getattr()metódy je:

 getattr (objekt, meno (, predvolené))

Vyššie uvedená syntax je ekvivalentná:

 názov objektu

getattr () parametre

getattr() metóda má viac parametrov:

  • objekt - objekt, ktorého hodnota pomenovaného atribútu sa má vrátiť
  • name - reťazec, ktorý obsahuje názov atribútu
  • default (voliteľné) - hodnota, ktorá sa vráti, keď sa nenájde pomenovaný atribút

Vrátiť hodnotu z getattr ()

getattr() metóda vracia:

  • hodnota pomenovaného atribútu daného objektu
  • default, ak sa nenájde žiadny pomenovaný atribút
  • AttributeErrorvýnimkou, ak sa nenájde a defaultnie je definovaný pomenovaný atribút

Príklad 1: Ako funguje getattr () v Pythone?

 class Person: age = 23 name = "Adam" person = Person() print('The age is:', getattr(person, "age")) print('The age is:', person.age)

Výkon

 Vek je: 23 Vek je: 23 

Príklad 2: getattr (), keď sa nenájde pomenovaný atribút

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

Výkon

 Pohlavie je: Mužský atribút Chyba: Objekt „Osoba“ nemá žiadny atribút „pohlavie“ 

Pomenovaný atribút sex sa v triede Osoba nenachádza. Takže pri volaní getattr()metódy s predvolenou hodnotou Malevráti Male.

Ak však neposkytneme žiadnu predvolenú hodnotu, keď sa nenájde pomenovaný atribút sex, vyvolá AttributeErrorpríslovie, že objekt nemá žiadny atribút sex.

Zaujímavé články...