Metoda getattr () vrací hodnotu pojmenovaného atributu objektu. Pokud není nalezen, vrátí výchozí hodnotu poskytnutou funkci.
Syntaxe getattr()metody je:
getattr (objekt, název (, výchozí))
Výše uvedená syntaxe je ekvivalentní:
název objektu
getattr () parametry
getattr() metoda má více parametrů:
- objekt - objekt, jehož hodnota pojmenovaného atributu má být vrácena
- name - řetězec, který obsahuje název atributu
- default (volitelně) - hodnota, která se vrátí, když není nalezen pojmenovaný atribut
Vrátit hodnotu z getattr ()
getattr() metoda vrací:
- hodnota pojmenovaného atributu daného objektu
default, pokud není nalezen žádný pojmenovaný atributAttributeErrorvýjimka, pokud pojmenovaný atribut nebyl nalezen adefaultnení definován
Příklad 1: Jak getattr () funguje v Pythonu?
class Person: age = 23 name = "Adam" person = Person() print('The age is:', getattr(person, "age")) print('The age is:', person.age)
Výstup
Věk je: 23 Věk je: 23
Příklad 2: getattr (), když nebyl nalezen pojmenovaný atribut
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ýstup
Pohlaví je: Muž AttributeError: Objekt „Osoba“ nemá atribut „sex“
Pojmenovaný atribut sex není ve třídě Osoba přítomen. Takže při volání getattr()metody s výchozí hodnotou Malevrátí Male.
Pokud však neposkytneme žádnou výchozí hodnotu, když není nalezen pojmenovaný atribut sex, vyvolá AttributeErrorrčení, že objekt nemá atribut sex.








