Classi e oggetti Python

Python è un linguaggio di programmazione orientato agli oggetti. Le classi e gli oggetti di Python sono i blocchi di costruzione fondamentali del linguaggio di programmazione Python.

Classe Python

A questo punto, tutti voi dovreste aver già appreso riguardo ai Tipi di Dati Python. Se ricordate, i tipi di dati di base in python si riferiscono solo a un tipo di dati alla volta. Come sarebbe se poteste dichiarare un tipo di dato che contiene di per sé più di un tipo di dati e può lavorare con essi con l’aiuto di una qualsiasi funzione? La classe Python vi offre questa opportunità. La classe Python è il modello su cui vengono create le istanze della classe.

Dichiarazione Semplice di una Classe Python

Ecco la struttura di base della definizione di una classe Python.

class ClassName:  
    # elenco delle variabili di classe di Python  
    # costruttore della classe Python  
    # definizioni dei metodi della classe Python

Adesso, lavoriamo con esempi reali.

#definizione della classe inizia qui  
class Person:  
    #inizializzazione delle variabili  
    name = ""  
    age = 0  
      
    #definizione del costruttore  
    def __init__(self, personName, personAge):  
        self.name = personName  
        self.age = personAge  
  
    #definizione dei metodi della classe  
    def showName(self):  
        print(self.name)  
  
    def showAge(self):  
        print(self.age)  
          
    #fine della definizione della classe  
  
# Crea un oggetto della classe  
person1 = Person("John", 23)  
#Crea un altro oggetto della stessa classe  
person2 = Person("Anne", 102)  
#chiama i metodi membro degli oggetti  
person1.showAge()  
person2.showName() 

Questo esempio è abbastanza autoesplicativo. Come sappiamo, le righe che iniziano con “#” sono commenti Python. I commenti spiegano i prossimi passaggi eseguibili. Questo codice produce l’output seguente.

Definizione della Classe Python

class Person: 

Questa riga segna l’inizio della definizione della classe per la classe ‘Persona’.

Variabili di Classe Python

    #inizializzazione delle variabili  
    name = ""  
    age = 0

‘nome’ e ‘età’ sono due variabili membro della classe ‘Persona’. Ogni volta che dichiariamo un oggetto di questa classe, conterrà queste due variabili come sue membro. Questa parte è facoltativa poiché possono essere inizializzate dal costruttore.

Costruttore della Classe Python

    #definizione del costruttore  
    def __init__(self, personName, personAge):  
        self.name = personName  
        self.age = personAge

Il costruttore della classe Python è il primo pezzo di codice eseguito quando si crea un nuovo oggetto di una classe. Principalmente, il costruttore può essere utilizzato per inserire valori nelle variabili di membro. È anche possibile stampare messaggi nel costruttore per confermare se l’oggetto è stato creato. Impareremo un ruolo più importante del costruttore una volta che avremo familiarità con l’ereditarietà in Python. Il metodo costruttore inizia con def __init__. Successivamente, il primo parametro deve essere ‘self’, in quanto passa un riferimento all’istanza della classe stessa. È possibile aggiungere anche parametri aggiuntivi come mostrato nell’esempio. ‘personName’ e ‘personAge’ sono due parametri da inviare quando si crea un nuovo oggetto.

Metodi della Classe Python

#definizione dei metodi della classe Python  
    def showName(self):  
        print(self.name)  

I metodi sono dichiarati nel modo seguente:

def method_name(self, parameter 1, parameter 2, …….)
    statements……..
    return value (if required)

Nell’esempio precedentemente citato, abbiamo visto che il metodo showName() stampa il valore del ‘nome’ di quell’oggetto. Discuteremo molto di più sui metodi Python un altro giorno.

Oggetto Classe Python

# Crea un oggetto della classe  
person1 = Person("Richard", 23)  
# Crea un altro oggetto della stessa classe  
person2 = Person("Anne", 30)  

# chiama i metodi membri degli oggetti  
person1.showAge()
person2.showName()

Il modo in cui gli oggetti vengono creati in Python è piuttosto semplice. Inizialmente, si inserisce il nome del nuovo oggetto seguito dall’operatore di assegnazione e dal nome della classe con i parametri (come definito nel costruttore). Ricorda, il numero e il tipo di parametri devono essere compatibili con i parametri ricevuti nella funzione del costruttore. Una volta creato l’oggetto, è possibile chiamare i metodi membri e accedere agli attributi membri (a patto che siano accessibili).

# stampa il nome di person1 accedendo direttamente all'attributo 'name'
print(person1.name)

Questo è tutto per le basi della classe Python. Poiché stiamo per imparare le caratteristiche orientate agli oggetti di Python come l’ereditarietà, il polimorfismo nei tutorial successivi, impareremo di più sulla classe Python e le sue caratteristiche. Fino ad allora, buon codice e arrivederci! Sentiti libero di commentare se hai qualche domanda. Riferimento: Documentazione di Python.org

Source:
https://www.digitalocean.com/community/tutorials/python-classes-objects