libri-javascript-python

Per definire una classe in Python utilizziamo la dichiarazione class seguita dal nome univoco della classe. All’interno di questa classe specifichiamo poi gli attributi ed i suoi metodi.

Tutte le classi hanno una funzione chiamata __init__(), che viene eseguita quando la classe viene avviata per creare un nuovo oggetto. Questa funzione identifica il costruttore, cioè rappresenta l’inizializzazione delle impostazioni dell’oggetto.

Il costruttore è dichiarato come qualsiasi altro metodo.

La sintassi per definire una classe è dunque questa:



class NomeClasse():
    #inizializzazione degli attributi
    def __init__(self, parametri):
        #attributi
    def nome_metodo(self, parametri):
        #azioni del metodo

Secondo le regole di programmazione, in tutti i linguaggi, il nome della classe si scrive sempre in maiuscolo, se è un nome composto si utilizza il PascalCase.

I nomi dei metodi sono in minuscolo e se sono costituiti da nomi composti si utilizza lo snake_case ovvero il carattere undescore (_) per separare le parole.

Il parametro self è un riferimento all’istanza corrente della classe ed è utilizzato per accedere alle variabili che appartengono alla classe. In definitiva self identifica la classe stessa e consente di utilizzare gli attributi all’interno dei metodi

Class Python – esempi

Facciamo un primo esempio per comprendere meglio l’utilizzo delle classi. Creiamo una semplice classe rettangolo avente come attributi la base e l’altezza ed il metodo area.



class Rect():
    #inizializzazione degli attributi
    def __init__(self, base, altezza):
        self.base = base
        self.altezza = altezza

    def area(self):
        return self.base * self.altezza

Creiamo poi un’istanza di questa classe:



#rect1 è un'istanza di Rect
rect1 = Rect(4,5)
#stampiamo la base
print("Base =", rect1.base)

#cambiamo la base
rect1.base = 10
print("Nuova Base =", rect1.base)

#stampiamo l'altezza
print("Altezza =", rect1.altezza)

#stampiamo l'area
print("Area =", rect1.area())

Class Python – salvataggio

Di solito le classi venfono salvate in file separati, come i moduli in Python, per poi essere richiamati con questo metodo:



from NomeClasse import *

Nel caso della nostra classe Rect la salviamo in un file di nome ‘Rect.py’ e poi la richiamo in questo modo:



from Rect import *

rect1 = Rect(4,5)

Stiamo attenti ad utilizzare le iniziali maiuscole.

Conclusioni

In questa lezione abbiamo spiegato il concetto di classe in Python e abbiamo visto come crearla attraverso la dichiarazione class.

Alcuni link utili

Indice tutorial sul linguaggio Python

Operazioni con i file in Python

Introduzione ai dizionari in Python

Creare matrici in Python

Funzione lambda in Python

Utilizzare Plot di Matplotlib

Quali sono i metodi delle liste