Pitone

Funzione getattr() di Python

Funzione getattr() di Python

La vasta gamma di moduli, funzioni e istruzioni incorporati in Python aiuta i programmatori a svolgere varie attività. La funzione getattr() è una funzione incorporata in Python che consente ai programmatori di accedere al valore dell'attributo di un oggetto. Se il valore non viene trovato, la funzione getattar() restituisce il valore predefinito. Questo è il motivo per cui la funzione getattr() viene utilizzata principalmente per accedere ai valori degli attributi degli oggetti. Questo articolo fornirà una spiegazione dettagliata della funzione getattr() con alcuni esempi.

Sintassi

Prima di passare all'implementazione della funzione getattr(), discuteremo prima la sua sintassi. La sintassi della funzione getattr() è la seguente:

getattr(nome_oggetto, nome_attributo, valore_defalut)

La funzione getattr() accetta tre parametri come argomento:
nome_oggetto: Il nome dell'oggetto al cui attributo dobbiamo accedere.
nome attributo: Il nome dell'attributo a cui dobbiamo accedere.
valore predefinito: Il valore predefinito che viene restituito quando l'attributo non viene trovato.

Se l'attributo name non viene trovato e non definiamo default_value, la funzione getattar() solleva un'eccezione AttributeError.

Esempi

Ora, esamineremo alcuni esempi utilizzando la funzione getattr(). Abbiamo creato una classe per studenti e definito alcuni attributi per questa classe. Stiamo accedendo a questi attributi utilizzando la funzione getattar().

#creare una classe studentesca
Studente di classe:
#definizione dell'attributo del nome
nome ="Giovanni"
#definizione di un attributo email
email="[email protetta]"
#Creazione di un oggetto di classe per studenti
std_obj = Studente()
#ora std_obj è il nostro oggetto
#accesso all'attributo del nome
print("Il valore dell'attributo nome è: ",getattr(std_obj,'nome'))
#accesso all'attributo email
print("Il valore dell'attributo email è: ",getattr(std_obj,'email'))

Produzione

La funzione getattr() ha restituito con successo i valori degli attributi.

Ora proveremo ad accedere a un attributo che non è definito. Definiremo il valore predefinito per questo attributo mancante.

#creare una classe studentesca
Studente di classe:
#definizione dell'attributo del nome
nome ="Giovanni"
#definizione di un attributo email
email="[email protetta]"
#Creazione di un oggetto di classe per studenti
std_obj = Studente()
#ora std_obj è il nostro oggetto
#accesso all'attributo età
print("L'età è: ",getattr(std_obj,'età','Sopra 20'))

Il valore definito è "Sopra 20".

Produzione

Nel caso dell'attributo 'età' mancante, viene stampato il valore definito.

Se il valore non è definito, la funzione getattr() solleverà un'eccezione 'AttributeError'. Vediamo un esempio di questo.

#creare una classe studentesca
Studente di classe:
#definizione dell'attributo del nome
nome ="Giovanni"
#definizione di un attributo email
email="[email protetta]"
#Creazione di un oggetto di classe per studenti
std_obj = Studente()
#ora std_obj è il nostro oggetto
#accesso all'attributo età
print("L'età è: ",getattr(std_obj,'età'))

Produzione

Puoi anche usare la funzione getattr() con namedtuple per accedere ai valori. Il namedtuple è un contenitore di tipo dizionario, ma puoi accedere ai suoi valori usando la funzione getattar(). Il namedtuple è una classe di moduli di collezioni. Implementiamo una namedtuple e accediamo ai valori usando la funzione getattr(). Stiamo creando una tuple con nome per lo studente.

#importando il modulo collezioni
importare collezioni
#creazione di una tupla con nome per uno studente
#nome ed età sono le chiavi
Studente= collezioni.namedtuple('Studente',['nome','età'])
#creare un nuovo insegnante e aggiungere i valori
std = Studente("Giovanni",21)
print("Il nome è:", getattr(std,"nome"))
print("L'età è: ",getattr(std,"età"))

Produzione

Conclusione

La funzione getattar() è una funzione incorporata in Python che restituisce il valore di un attributo dell'oggetto. La ragione principale per usare la funzione getattr() è che rende facile accedere al valore di un attributo usando il nome dell'attributo. Il nome dell'attributo è definito come una stringa e otteniamo il valore usando la funzione getattar(). Un valore può essere definito anche per l'attributo mancante. Dopo aver letto questo articolo, si spera che tu abbia imparato di più su come usare la funzione getattar() di Python.

I migliori giochi da giocare con il tracciamento delle mani
Oculus Quest ha recentemente introdotto la grande idea del tracciamento manuale senza controller. Con un numero sempre crescente di giochi e attività ...
Come mostrare l'overlay OSD in app e giochi Linux a schermo intero
Giocare a giochi a schermo intero o utilizzare app in modalità a schermo intero senza distrazioni può tagliarti fuori dalle informazioni di sistema ri...
Le 5 migliori carte di acquisizione del gioco
Abbiamo tutti visto e amato i giochi in streaming su YouTube. PewDiePie, Jakesepticye e Markiplier sono solo alcuni dei migliori giocatori che hanno g...