La funzione setattr di python

Nel linguaggio python la funzione setattr mi permette di modificare un attributo di una classe dall'esterno.

La sintassi

setattr(oggetto, attributo, valore)

    Un esempio pratico

    In questo script sviluppo una semplice classe Persone() con un attributo interno ( nome ).

    1. class Persone():
    2. nome = 'Andrea'
    3. print(getattr(Persone, 'nome'))
    4. setattr(Persone, 'nome', 'Ilaria')
    5. print(getattr(Persone, 'nome'))

    All'attributo nome è assegnato inizialmente la stringa 'Andrea'.

    La riga 3 legge e stampa il valore dell'attributo 'nome' tramite la funzione getattr().

    Andrea

    Nella riga 4 modifico il valore dell'attributo 'nome' assegnandogli la stringa 'Ilaria' tramite la funzione setattr().

    La riga 5 legge e stampa il valore corrente dell'attributo 'nome' tramite la funzione getattr().

    Ilaria

    Ora nella classe Persone() l'attributo 'name' contiene la nuova informazione.

    Non è più quella iniziale.

    E così via.

     


     

    Segnalami un errore, un refuso o un suggerimento per migliorare gli appunti

    FacebookTwitterLinkedinLinkedin
    knowledge base

    Classi Python