Piton

Python getattr () függvény

Python getattr () függvény

A Python beépített moduljainak, funkcióinak és utasításainak rengeteg változata segíti a programozókat a különféle feladatok végrehajtásában. A getattr () függvény egy beépített Python-függvény, amely lehetővé teszi a programozók számára, hogy hozzáférjenek egy objektum attribútumértékéhez. Ha az érték nem található, akkor a getattar () függvény visszaadja az alapértelmezett értéket. Ez az oka annak, hogy a getattr () függvényt leginkább az objektumok attribútumértékeinek elérésére használják. Ez a cikk néhány példával részletes magyarázatot ad a getattr () függvényről.

Szintaxis

Mielőtt továbblépnénk a getattr () függvény végrehajtására, először megvitatjuk a szintaxisát. A getattr () függvény szintaxisa a következő:

getattr (objektum_neve, attribútumnév, defalut_érték)

A getattr () függvény három paramétert vesz fel argumentumként:
objektum_neve: Azon objektum neve, amelynek attribútumához hozzáférnünk kell.
attribútum_neve: Az attribútum neve, amelyhez hozzáférnünk kell.
alapértelmezett érték: Az alapértelmezett érték, amely akkor kerül visszaadásra, ha az attribútum nem található.

Ha a name attribútum nem található, és nem definiáljuk az default_value értéket, akkor a getattar () függvény felhoz egy AttributeError kivételt.

Példák

Most megnézünk néhány példát a getattr () függvény használatával. Létrehoztunk egy tanulóosztályt, és meghatároztunk néhány tulajdonságot ehhez az osztályhoz. Ezeket az attribútumokat a getattar () függvény segítségével érjük el.

# diákosztály létrehozása
osztályos diák:
#defining name attribútum
név = "János"
#defining e-mail attribútum
email = "[e-mail védett]"
# Diákosztály objektum létrehozása
std_obj = Tanuló ()
# most az std_obj a tárgyunk
# Hozzáférés a név attribútumhoz
print ("A név attribútum értéke:", getattr (std_obj, 'név'))
# Hozzáférés az e-mail attribútumhoz
print ("Az e-mail attribútum értéke:", getattr (std_obj, 'email'))

Kimenet

A getattr () függvény sikeresen visszaadta az attribútumértékeket.

Most megpróbálunk elérni egy nem definiált attribútumot. Meghatározzuk a hiányzó attribútum alapértelmezett értékét.

# diákosztály létrehozása
osztályos diák:
#defining name attribútum
név = "János"
#defining e-mail attribútum
email = "[e-mail védett]"
# Diákosztály objektum létrehozása
std_obj = Tanuló ()
# most az std_obj a tárgyunk
#accessing the age attribútum
nyomtatás ("A kor:", getattr (std_obj, 'kor', '20 felett'))

A megadott érték „20 felett”.

Kimenet

Hiányzó „age” attribútum esetén a megadott érték kerül kinyomtatásra.

Ha az érték nincs meghatározva, akkor a getattr () függvény 'AttributeError' kivételt vet fel. Lássunk erre egy példát.

# diákosztály létrehozása
osztályos diák:
#defining name attribútum
név = "János"
#defining e-mail attribútum
email = "[e-mail védett]"
# Diákosztály objektum létrehozása
std_obj = Tanuló ()
# most az std_obj a tárgyunk
#accessing the age attribútum
print ("A kor:", getattr (std_obj, 'kor'))

Kimenet

Az értékek eléréséhez a getttr () függvényt a namedtuple paranccsal is használhatja. A namedtuple egy szótár típusú tároló, de értékeit a getattar () függvény segítségével érheti el. A namedtuple a gyűjtemény modul osztálya. Vezessünk be egy namedtuple-t, és érjük el az értékeket a getattr () függvény segítségével. A diák számára létrehozunk egy megnevezett duplát.

#importálás a gyűjtemények modulból
import gyűjtemények
# megnevezett pár létrehozása egy diák számára
A #név és az életkor a kulcs
Diák = gyűjtemények.namedtuple ('Diák', ['név', 'életkor'])
# új tanár létrehozása és az értékek hozzáadása
std = Hallgató ("John", 21)
print ("A név:", getattr (std, "név"))
nyomtatás ("A kor:", getattr (std, "kor"))

Kimenet

Következtetés

A getattar () függvény a Python beépített függvénye, amely visszaadja az objektum attribútum értékét. A getattr () függvény elsődleges oka az, hogy megkönnyíti az attribútum értékének elérését az attribútum nevével. Az attribútum neve karakterláncként van definiálva, és az értéket a getattar () függvény segítségével kapjuk meg. A hiányzó attribútumhoz érték is meghatározható. A cikk elolvasása után remélhetőleg többet megtudott a Python getattar () függvény használatáról.

Microsoft Sculpt Touch vezeték nélküli egér áttekintés
Nemrég olvastam a Microsoft Sculpt Touch vezeték nélküli egér és úgy döntött, hogy megveszi. Egy ideig használat után úgy döntöttem, hogy megosztom ve...
AppyMouse képernyős Trackpad és egérmutató a Windows táblagépekhez
A táblagép-felhasználók gyakran hiányolják az egérmutatót, különösen akkor, ha szokták használni a laptopokat. Az érintőképernyős okostelefonok és táb...
Az egér középső gombja nem működik a Windows 10 rendszerben
A középső egérgomb segít átgörgetni a hosszú weboldalakat és a sok adatot tartalmazó képernyőket. Ha ez leáll, akkor a billentyűzet segítségével görge...