Vai al contenuto principale

Tutorial sulle classi in Python

In Python, tutto è un oggetto. Numeri, stringhe, DataFrame e persino le funzioni sono oggetti. In particolare, tutto ciò con cui hai a che fare in Python ha una classe, un modello associato dietro le quinte.
Aggiornato 29 set 2026  · 3 min leggi

Scopri con l'IA

ChatGPTClaudePerplexity

Un approccio orientato agli oggetti è più utile quando il tuo codice prevede interazioni complesse tra molti oggetti. Nel codice di produzione reale, le classi possono avere decine di attributi e metodi con logiche complicate, ma la struttura di base è la stessa anche per la classe più semplice.

Le classi sono come un progetto per gli oggetti che delinea i possibili comportamenti e stati che ogni oggetto di un certo tipo può avere. Per esempio, se dici: "ogni cliente avrà un numero di telefono e un'email e sarà in grado di effettuare e annullare ordini", hai appena definito una classe! In questo modo, puoi parlare dei clienti in modo unificato. Poi un oggetto Customer specifico è semplicemente una realizzazione di questa classe con un determinato valore di stato.

grafica della classe customer

Trovare le classi in Python

In Python, tutto è un oggetto. Numeri, stringhe, DataFrame e persino le funzioni sono oggetti. In particolare, tutto ciò con cui hai a che fare in Python ha una classe, un modello associato dietro le quinte. L'esistenza di queste interfacce unificate è il motivo per cui puoi usare, per esempio, qualsiasi DataFrame nello stesso modo.

Puoi chiamare type() su qualsiasi oggetto Python per scoprire la sua classe. Per esempio, la classe di un array numpy si chiama in realtà ndarray (per array n-dimensionale).

import numpy as np
a = np.array([1,2,3,4])
print(type(a))
numpy.ndarray

Le classi incorporano informazioni su stato e comportamento. Le informazioni di stato in Python sono contenute negli attributi e le informazioni di comportamento nei metodi.

Attributi e metodi

Prendi un array numpy: hai già usato alcuni dei suoi metodi e attributi!

Per esempio, ogni array numpy ha un attributo "shape" a cui puoi accedere specificando il nome dell'array seguito da un punto e shape.

Stato <--> Attributi

import numpy as np
a = np.array([1,2,3,4])
# shape attribute
a.shape
(4,)

Ha anche metodi come max e reshape a cui si accede sempre tramite il punto.

Comportamento <--> Metodi

import numpy as np
a = np.array([1,2,3,4])
# reshape method
a.reshape(2,2)
array([[1, 2],
       [3, 4]])

Creare la tua prima classe

In questo esempio creerai una classe vuota Employee. Poi creerai un oggetto emp della classe Employee chiamando Employee().

Prova a stampare l'attributo .name dell'oggetto emp nella console. Cosa succede?

# Create an empty class Employee
class Employee:
    pass
# Create an object emp of class Employee
emp = Employee()

Provalo tu stesso.

Per saperne di più sulla programmazione orientata agli oggetti in Python, guarda questo video tratto dal nostro corso, Object-Oriented Programming in Python.

Questo contenuto è tratto dal corso Object-Oriented Programming in Python di DataCamp a cura di Aliaksandra Yarosh. 

Dai un'occhiata al tutorial su Python Object-Oriented Programming (OOP) di DataCamp.

Argomenti
Python

Scopri di più su Python

Corso

Introduzione a Python

4 ore
7.1M
Impara le basi dell’analisi dei dati con Python in sole 4 ore. Questo corso online ti introduce all’interfaccia di Python e ai pacchetti più usati.
Vedi i dettagliRight Arrow
Inizia Il Corso
Mostra altroRight Arrow
Correlato

blog

Tokenizzazione nel NLP: come funziona, sfide e casi d'uso

Guida al preprocessing NLP nel machine learning. Copriamo spaCy, i transformer di Hugging Face e come funziona la tokenizzazione in casi d'uso reali.
Abid Ali Awan's photo

Abid Ali Awan

10 min

blog

Che cos'è Snowflake? Guida per principianti alla piattaforma dati cloud

Esplora le basi di Snowflake, la piattaforma dati cloud. Scopri la sua architettura, le sue funzionalità e come integrarla nelle tue pipeline di dati.
Tim Lu's photo

Tim Lu

12 min

blog

I 15 migliori server MCP remoti che ogni AI builder dovrebbe conoscere nel 2026

Scopri i 15 migliori server MCP remoti che stanno trasformando lo sviluppo AI nel 2026. Scopri come migliorano automazione, ragionamento, sicurezza e velocità dei workflow.
Abid Ali Awan's photo

Abid Ali Awan

15 min

Mostra AltroMostra Altro