Vai al contenuto principale

Risoluzione dell’errore No module named 'sklearn' in Python

Scopri come risolvere rapidamente l’eccezione ModuleNotFoundError: No module named 'sklearn' con la nostra guida online dettagliata e facile da seguire.
Aggiornato 29 set 2026  · 5 min leggi

Scopri con l'IA

ChatGPTClaudePerplexity

Scikit-learn, spesso abbreviato in sklearn, è una libreria Python ampiamente utilizzata per attività di analisi e modellazione dei dati, incluso il machine learning. I nuovi utenti impazienti di provare sklearn potrebbero però frustrarsi quando incontrano un messaggio d’errore poco familiare e non semplice da diagnosticare.

In questo tutorial vedremo come correggere l’errore No module named 'sklearn' per tornare operativi usando l’ampia raccolta di algoritmi e strumenti di sklearn per l’analisi e la modellazione dei dati. Nel frattempo, impareremo anche competenze più generali per la risoluzione dei problemi d’installazione dei pacchetti, diventando programmatori Python più solidi. Per un ripasso sul pacchetto scikit-learn, dai un’occhiata alla nostra Scikit-Learn Cheat Sheet prima di iniziare.

Capire l’errore No module named 'sklearn' in Python

Osserviamo l’immagine seguente. Qui abbiamo provato a importare sklearn e abbiamo ottenuto un’eccezione ModuleNotFoundError.

Esempio in ambiente Python ModuleNotFoundError: No module named 'sklearn'ModuleNotFoundError in ambiente Python


Come possiamo intuire dal nome, ModuleNotFoundError è un tipo specifico di ImportError che indica che Python non riesce a trovare un determinato modulo. In questo caso, il modulo è sklearn, ma potrebbe essere qualsiasi altro modulo, come numpy o pandas.

Il nostro corso Introduction to Data Science in Python contiene lezioni con molti esempi su come importare e lavorare con moduli come numpy.  

Cause comuni del messaggio Python ModuleNotFoundError

Potresti incontrare l’errore No module named 'sklearn' per diverse ragioni comuni. Tra le principali: 

  • Sklearn non installato: La causa più frequente è che scikit-learn non è installato nel nostro ambiente Python.

  • Installazione non corretta: A volte scikit-learn può essere installato ma non correttamente, causando problemi nell’import dei moduli della libreria.

  • Problemi di configurazione dell’ambiente o del percorso Python: Questo accade più spesso quando si lavora in un ambiente virtuale o si usa un interprete Python diverso.

Per fortuna, con un approccio passo dopo passo, è probabile che riusciremo a risolvere il problema. Andiamo avanti. 

Risoluzione dell’errore Python ModuleNotFoundError

Verifica dell’installazione di scikit-learn

Il primo passo è assicurarci che scikit-learn sia installato correttamente nel nostro ambiente Python. Possiamo farlo eseguendo il seguente comando nel terminale o prompt dei comandi:

py -m pip list

Questo produce un elenco alfabetico di tutte le librerie installate nel nostro ambiente Python. Scorriamo l’elenco e verifichiamo che scikit-learn sia presente.

Esempio di elenco dei pacchetti Python installati in Visual Studio Code ottenuto con pipEsempio di elenco dei pacchetti installati


Se, dopo aver scorsi l’elenco, scopriamo che scikit-learn non è installato, possiamo installarlo usando il comando pip o conda, a seconda del nostro ambiente:

pip install scikit-learn
conda install scikit-learn

Per maggiori informazioni sull’uso di gestori di pacchetti come pip, consulta il nostro Pip Python Tutorial for Package Management. 

Riavvia il kernel di Python

Se stiamo lavorando in un Jupyter Notebook o in un IDE come Spyder, il passo successivo è considerare il riavvio del kernel Python. Lo facciamo perché, anche se abbiamo appena installato o reinstallato scikit-learn, la modifica potrebbe non essere disponibile subito nella sessione interattiva corrente. Riavviare il kernel ricarica l’ambiente e i percorsi delle librerie. È un passaggio semplice ma essenziale che può risolvere tanti tipi di errori.

Riavvio del kernel Jupyter in Visual Studio CodeRiavvio del kernel Jupyter

Controlla variabili d’ambiente e percorso di Python

Successivamente dobbiamo assicurarci che il nostro ambiente Python sia configurato correttamente per individuare il pacchetto scikit-learn. Questo passaggio è cruciale perché garantisce che Python cerchi nelle directory corrette il pacchetto scikit-learn installato.

Qui controlliamo la variabile d’ambiente PYTHONPATH per verificare che includa la directory in cui è installato scikit-learn. Possiamo farlo eseguendo il seguente comando in uno script o interprete Python:

import sys
print(sys.path)

Eseguendo import sys seguito da print(sys.path) possiamo vedere le directory che Python sta attualmente controllando. Se il percorso alla directory in cui è installato scikit-learn non è presente nell’elenco, Python non riuscirà a trovare e importare scikit-learn.

Infine, possiamo verificare che l’interprete Python in uso corrisponda all’ambiente in cui è installato scikit-learn. Segui il nostro tutorial dettagliato per imparare come configurare un ambiente di data science sul tuo computer. 

Reinstalla scikit-learn

Se non funziona nient’altro, valuta di reinstallare scikit-learn per risolvere eventuali problemi legati all’installazione. È possibile che il file si sia corrotto durante il download o l’installazione a causa di problemi di rete, interruzioni o errori del disco. È anche possibile che ci siano stati conflitti di dipendenze da installazioni precedenti.

Possiamo disinstallare scikit-learn usando pip o conda e poi reinstallarlo per garantire un’installazione pulita. 

pip uninstall scikit-learn

pip install scikit-learn
conda uninstall scikit-learn

conda install scikit-learn

Verifica dell’installazione e della configurazione dell’ambiente

Come passaggio finale, una volta che pensiamo di aver risolto l’errore No module named 'sklearn', potremmo voler verificare che scikit-learn sia installato correttamente e che l’ambiente sia configurato in modo appropriato, per stare tranquilli.

Possiamo farlo importando scikit-learn in uno script o interprete Python e controllando se compaiono errori di import.

import sklearn

print(sklearn.__version__)

Se non incontriamo errori, scikit-learn dovrebbe essere installato correttamente e possiamo iniziare a usarlo nei tuoi progetti di machine learning!

Conclusione

Imbattersi nell’errore No module named 'sklearn' può essere frustrante, ma con i giusti passaggi di troubleshooting possiamo risolverlo rapidamente e tornare alle nostre attività di machine learning. 

Ti invito a approfondire la teoria alla base del machine learning e alcuni modelli comuni, come il clustering k-means, la regressione logistica o le SVM. Puoi anche imparare alcune buone pratiche di coding per evitare in futuro altri messaggi d’errore frustranti.


Amberle McKee's photo
Author
Amberle McKee
LinkedIn

Sono un PhD con 13 anni di esperienza nel lavoro con i dati in un contesto di ricerca biologica. Creo software in diversi linguaggi di programmazione, tra cui Python, MATLAB e R. Sono appassionato di condividere con il mondo il mio amore per l’apprendimento.

Argomenti
Python
Analisi dei dati

Impara Python con DataCamp

Corso

Introduzione a Python

4 ore
7M
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

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

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

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