Python

Python getattr () -funksjon

Python getattr () -funksjon

Det store utvalget av innebygde Python-moduler, funksjoner og utsagn hjelper programmerere til å utføre forskjellige oppgaver. Getattr () -funksjonen er en innebygd Python-funksjon som lar programmerere få tilgang til attributtverdien til et objekt. Hvis verdien ikke blir funnet, returnerer getattar () -funksjonen standardverdien. Dette er grunnen til at funksjonen getattr () hovedsakelig brukes til å få tilgang til attributtverdiene til objekter. Denne artikkelen vil gi en detaljert forklaring av getattr () -funksjonen med noen eksempler.

Syntaks

Før vi går videre til implementeringen av getattr () -funksjonen, skal vi først diskutere syntaksen. Syntaksen til getattr () -funksjonen er som følger:

getattr (objektnavn, attributtnavn, defalut_verdi)

Getattr () -funksjonen tar tre parametere som et argument:
objektnavn: Navnet på objektet som vi trenger tilgang til.
attributtnavn: Navnet på attributtet som vi trenger tilgang til.
standardverdi: Standardverdien som returneres når attributtet ikke blir funnet.

Hvis navnattributtet ikke blir funnet, og vi ikke definerer standardverdien, gir getattar () -funksjonen et AttributeError-unntak.

Eksempler

Nå vil vi se på noen eksempler ved hjelp av getattr () -funksjonen. Vi har laget en elevklasse og definert noen attributter for denne klassen. Vi får tilgang til disse attributtene ved hjelp av getattar () -funksjonen.

# skape en studentklasse
klasse Student:
#defining name attribute
name = "John"
#defining et e-postattributt
email = "[email protected]"
# Opprette et elevklasseobjekt
std_obj = Student ()
#now std_obj er vårt objekt
#accessing the name attribute
print ("Navnet attributtverdien er:", getattr (std_obj, 'navn'))
#accessing the email attribute
print ("E-postattributtverdien er:", getattr (std_obj, 'email'))

Produksjon

Funksjonen getattr () returnerte attributtverdiene.

Nå vil vi prøve å få tilgang til et attributt som ikke er definert. Vi definerer standardverdien for dette manglende attributtet.

# skape en studentklasse
klasse Student:
#defining name attribute
name = "John"
#defining et e-postattributt
email = "[email protected]"
# Opprette et elevklasseobjekt
std_obj = Student ()
#now std_obj er vårt objekt
#accessing the age attribute
utskrift ("The age is:", getattr (std_obj, 'age', 'Over 20'))

Den definerte verdien er “Over 20”.

Produksjon

I tilfelle det manglende attributtet "age" skrives den definerte verdien ut.

Hvis verdien ikke er definert, vil getattr () -funksjonen heve et 'AttributeError' unntak. La oss se et eksempel på dette.

# skape en studentklasse
klasse Student:
#defining name attribute
name = "John"
#defining et e-postattributt
email = "[email protected]"
# Opprette et elevklasseobjekt
std_obj = Student ()
#now std_obj er vårt objekt
#accessing the age attribute
print ("The age is:", getattr (std_obj, 'age'))

Produksjon

Du kan også bruke getattr () -funksjonen med namedtuple for å få tilgang til verdiene. Den navngitte tuplen er en ordbokstypebeholder, men du kan få tilgang til verdiene ved hjelp av getattar () -funksjonen. Den navngitte tuplen er en klasse med samlingsmodul. La oss implementere en namedtuple og få tilgang til verdiene ved hjelp av getattr () -funksjonen. Vi lager en navngitt tuple for studenten.

#importing av samlingsmodulen
importer samlinger
# lage en navngitt tuple for en student
#navn og alder er nøklene
Student = samlinger.namedtuple ('Student', ['name', 'age'])
# skape en ny lærer og legge til verdiene
std = Student ("John", 21)
skriv ut ("Navnet er:", getattr (std, "navn"))
print ("The age is:", getattr (std, "age"))

Produksjon

Konklusjon

Getattar () -funksjonen er en innebygd funksjon i Python som returnerer verdien til et objektattributt. Den primære grunnen til å bruke getattr () -funksjonen er at det gjør det enkelt å få tilgang til verdien til et attributt ved hjelp av attributtnavnet. Attributtnavnet er definert som en streng, og vi får verdien ved hjelp av getattar () -funksjonen. En verdi kan også defineres for det manglende attributtet. Etter å ha lest denne artikkelen, forhåpentligvis, lærte du mer om hvordan du bruker Python getattar () -funksjonen.

OpenTTD vs Simutrans
Å lage din egen transportsimulering kan være morsom, avslappende og ekstremt fristende. Derfor må du sørge for at du prøver så mange spill som mulig f...
OpenTTD Tutorial
OpenTTD er et av de mest populære forretningssimuleringsspillene der ute. I dette spillet må du lage en fantastisk transportvirksomhet. Du begynner im...
SuperTuxKart for Linux
SuperTuxKart er en flott tittel designet for å gi deg Mario Kart-opplevelsen gratis på Linux-systemet ditt. Det er ganske utfordrende og morsomt å spi...