Anaconda Installation and Setup

Installazione di Anaconda/Miniconda (Windows, WSL, Linux), analisi comparativa e integrazione con VS Code
Sezione intitolata “Installazione di Anaconda/Miniconda (Windows, WSL, Linux), analisi comparativa e integrazione con VS Code”1. Introduzione e Analisi Comparativa
Sezione intitolata “1. Introduzione e Analisi Comparativa”In questa sezione si illustrano le procedure per l’installazione e la configurazione della distribuzione Anaconda (o della sua controparte leggera, Miniconda).
Prima di procedere all’aspetto operativo, è fondamentale comprendere la distinzione rispetto all’interprete Python nativo discusso in precedenza.
1.1 Conda vs Python Nativo (pip/venv)
Sezione intitolata “1.1 Conda vs Python Nativo (pip/venv)”La scelta tra un’installazione nativa e l’uso di Conda dipende dalla tipologia di sviluppo.
Vantaggi dell’ambiente Conda:
-
Gestione dei Binari: Conda non gestisce solo pacchetti Python, ma anche librerie di sistema (C, C++, Fortran). Questo è cruciale in ambito Data Science (es. NumPy, SciPy, TensorFlow) dove la compilazione manuale delle dipendenze può risultare complessa.
-
Ambienti Isolati Completi: Un ambiente Conda è completamente indipendente, includendo una propria versione di Python, slegata da quella di sistema.
-
Pre-installazione: La versione “Anaconda Full” include oltre 1500 pacchetti scientifici pronti all’uso.
Svantaggi:
-
Pesantezza: L’installazione completa di Anaconda può occupare diversi GB.
-
Velocità: Il risolutore di dipendenze di Conda può risultare più lento rispetto a
pip. -
Complessità del PATH: Richiede una gestione attenta delle variabili d’ambiente per non entrare in conflitto con altri software.
2. Installazione su Windows (PowerShell)
Sezione intitolata “2. Installazione su Windows (PowerShell)”2.1 Download della Risorsa
Sezione intitolata “2.1 Download della Risorsa”Si consiglia di scaricare l’installer grafico ufficiale:
Se si predilige un’installazione minimale (consigliata per utenti esperti), si opti per Miniconda:
2.2 Procedura di Installazione
Sezione intitolata “2.2 Procedura di Installazione”Eseguire l’installer .exe con privilegi amministrativi e osservare le seguenti direttive:
-
Destinazione: Installare preferibilmente in un percorso senza spazi (es.
C:\Anaconda3). -
Opzioni Avanzate (Critico):
-
NON selezionare “Add Anaconda3 to my PATH environment variable”. Questa opzione è deprecata e può causare instabilità di sistema.
-
Selezionare “Register Anaconda3 as my default Python 3.x”.
-
-
Completare l’installazione.
2.3 Inizializzazione della Shell e Prevenzione Conflitti
Sezione intitolata “2.3 Inizializzazione della Shell e Prevenzione Conflitti”Poiché non abbiamo aggiunto Anaconda al PATH, è necessario inizializzare PowerShell affinché strumenti esterni come VS Code possano interagire con gli ambienti Conda. Tuttavia, è imperativo prevenire la sovrapposizione con l’interprete Python nativo.
-
Aprire il menu Start e cercare “Anaconda Powershell Prompt”.
-
Eseguire il seguente comando per abilitare
Condasu tutte le future istanze di PowerShell standard:Finestra del terminale conda init powershell -
Passaggio Critico: Di default, il comando precedente imposta Anaconda per attivarsi automaticamente all’apertura di ogni terminale, mascherando l’installazione nativa di Python. Per evitare questo comportamento (Path Pollution) e warning relativi alla deprecazione di vecchi comandi, eseguire:
Finestra del terminale conda config --set auto_activate false -
Chiudere e riaprire una normale finestra di PowerShell. Verificare che il prefisso
(base)non sia presente.
2.4 Coesistenza con Python Nativo
Sezione intitolata “2.4 Coesistenza con Python Nativo”A questo punto, l’ambiente Conda è installato e configurato per coesistere senza conflitti con l’installazione nativa di Python.
Stato della shell con la configurazione auto_activate false
Sezione intitolata “Stato della shell con la configurazione auto_activate false”Con la configurazione seguente:
conda init powershell conda config --set auto_activate falseQuando si apre PowerShell si ha:
-
Conda disponibile, ma non attivo
-
Nessun ambiente Conda attivato
-
Il
PATHpunta al Python di sistema (se installato)
Quindi il comando python --version usa:
-
Python installato tramite:
-
python.org
-
Microsoft Store
-
Chocolatey
-
altro installer di sistema
-
NON il Python di Conda.
Quando viene usato Python di Conda?
Sezione intitolata “Quando viene usato Python di Conda?”Il Python di Conda entra in gioco solo quando si attiva esplicitamente un ambiente:
conda activate baseoppure
conda activate myenvIn quel momento:
-
Il
PATHviene modificato -
pythonpunta all’interprete dell’ambienteCondaattivo -
Le librerie disponibili sono solo quelle di quell’ambiente
Alla disattivazione:
conda deactivatesi torna automaticamente al Python di sistema.
Confronto pratico
Sezione intitolata “Confronto pratico”Scenario 1 — Nessun ambiente Conda attivo
Sezione intitolata “Scenario 1 — Nessun ambiente Conda attivo”python✔ Python di sistema
✔ Pacchetti installati globalmente o in venv classici
Scenario 2 — Ambiente Conda attivo
Sezione intitolata “Scenario 2 — Ambiente Conda attivo”conda activate myenvpython✔ Python di Conda
✔ Pacchetti isolati dell’ambiente myenv
Convivenza consigliata (best practice)
Sezione intitolata “Convivenza consigliata (best practice)”La configurazione ottimale usa Conda solo quando necessario:
-
Si usano due gestori di ambienti distinti:
-
venv/virtualenvper progetti Python “standard” -
Conda per:
-
data science
-
numpy/pandas/pytorch/tensorflow -
ambienti con dipendenze native complesse
-
-
-
Si vuole evitare che Conda “invada” ogni terminale
Come verificare quale Python si sta usando?
Sezione intitolata “Come verificare quale Python si sta usando?”Comando chiave:
# PowerShellwhere.exe python-
Senza Conda attivo → percorso di sistema
-
Con Conda attivo → percorso dentro
miniconda/anaconda
Schema di utilizzo degli ambienti Python
Sezione intitolata “Schema di utilizzo degli ambienti Python”1. Stato iniziale — PowerShell appena aperta
Sezione intitolata “1. Stato iniziale — PowerShell appena aperta”PowerShell│├─ Python di sistema (attivo)│ └─ python.exe (installazione standard)│└─ Conda (disponibile ma inattivo)-
Nessun ambiente Conda attivo
-
python→ Python di sistema -
pip→ pacchetti globali / venv standard
2. Uso di un ambiente venv (Python “classico”)
Sezione intitolata “2. Uso di un ambiente venv (Python “classico”)”PowerShell│├─ Python di sistema│ └─ venv\Scripts\activate│ └─ Ambiente venv attivoComandi tipici:
python -m venv .venv.\.venv\Scripts\activatepython-
Isolamento gestito da
venv -
Conda non coinvolta
-
Ottimo per progetti backend, scripting, didattica base
3. Uso di Conda (solo su richiesta)
Sezione intitolata “3. Uso di Conda (solo su richiesta)”PowerShell│└─ Conda └─ conda activate myenv └─ Ambiente Conda attivoComandi:
conda activate myenvpython-
Python e librerie forniti da Conda
-
Ideale per:
-
numpy / pandas
-
machine learning
-
librerie con dipendenze native
-
4. Uscita da Conda
Sezione intitolata “4. Uscita da Conda”conda deactivateSi ritorna automaticamente a:
Python di sistemaTabella riassuntiva
Sezione intitolata “Tabella riassuntiva”| Situazione | python usato | Gestione pacchetti |
|---|---|---|
| Shell appena aperta | Python di sistema | pip |
venv attivo | Python di sistema (isolato) | pip |
| Conda attivo | Python Conda | conda / pip |
| Conda disattivato | Python di sistema | pip |
Verifica rapida (consigliata in aula o debug)
where.exe python| Output principale | Significato |
|---|---|
C:\Python... | Python di sistema |
...\venv\Scripts\python.exe | venv attivo |
...\miniconda3\envs... | Conda attivo |
Configurazione consigliata
Sezione intitolata “Configurazione consigliata”-
Default
-
Python di sistema
-
venvper ambienti isolati -
pipper gestione classica dei pacchetti (globali o venv) -
uvper la gestione moderna dei progetti Python -
Ruffper qualità del codice
-
-
Eccezioni
-
Conda solo per:
-
data science
-
ML
-
stack scientifici complessi
-
-
Questo approccio:
-
riduce la complessità
-
evita conflitti
-
riflette lo stato dell’arte dell’ecosistema Python
3. Installazione su WSL e Linux Nativo
Sezione intitolata “3. Installazione su WSL e Linux Nativo”La procedura per i sistemi basati su Linux (incluso WSL Ubuntu) è identica e avviene tramite riga di comando.
3.1 Acquisizione dello Script di Installazione
Sezione intitolata “3.1 Acquisizione dello Script di Installazione”Si utilizzi il comando wget per scaricare l’ultima versione dello script installer (si consiglia di verificare l’URL per l’ultima versione, qui riportiamo un esempio generico per l’architettura x86_64):
# Per Anaconda Standardwget https://repo.anaconda.com/archive/Anaconda3-latest-Linux-x86_64.sh
# OPPURE, per Miniconda (Consigliato per server/WSL)wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh3.2 Esecuzione dello Script
Sezione intitolata “3.2 Esecuzione dello Script”Si proceda all’installazione eseguendo lo script tramite bash:
# Sostituire con il nome del file scaricatobash Anaconda3-latest-Linux-x86_64.shDurante l’esecuzione:
-
Premere Invio per scorrere la licenza e digitare “yes” per accettarla.
-
Confermare la directory di installazione predefinita (solitamente
/home/username/anaconda3ominiconda3). -
Alla domanda “Do you wish the installer to initialize Anaconda3 by running conda init?”, digitare “yes”.
-
Anche in ambiente Linux, si raccomanda di disabilitare l’attivazione automatica utilizzando la nuova sintassi:
Finestra del terminale conda config --set auto_activate false
3.3 Attivazione
Sezione intitolata “3.3 Attivazione”Affinché le modifiche abbiano effetto, ricaricare la configurazione della shell:
source ~/.bashrcVerificare l’installazione digitando:
conda --version3.4 Gestione degli Ambienti (Best Practices)
Sezione intitolata “3.4 Gestione degli Ambienti (Best Practices)”# Creazione di un nuovo ambiente con una versione specifica di Pythonconda create --name corso_python python=3.11
# Attivazione dell'ambienteconda activate corso_python
# Installazione di pacchetti (esempio)conda install numpy pandas5. Configurazione dell’IDE: Visual Studio Code
Sezione intitolata “5. Configurazione dell’IDE: Visual Studio Code”L’integrazione di Conda in VS Code richiede passaggi specifici per garantire che l’IDE riconosca correttamente gli interpreti isolati.
5.1 Prerequisiti
Sezione intitolata “5.1 Prerequisiti”Assicurarsi di aver effettuato la configurazione dell’estensione Python (Microsoft) e di Ruff (charliermarsh/ruff) come descritto nella pagina relativa all’integrazione degli strumenti di sviluppo.
5.2 Selezione dell’Interprete Conda
Sezione intitolata “5.2 Selezione dell’Interprete Conda”-
Aprire VS Code all’interno della cartella del progetto.
-
Assicurarsi di aver creato e attivato l’ambiente Conda desiderato (es.
corso_python) tramite terminale prima di lanciare VS Code, oppure averlo già disponibile. -
Premere
F1oCtrl+Shift+Pe digitare: “Python: Select Interpreter”. -
VS Code dovrebbe elencare automaticamente gli ambienti Conda rilevati. Selezionare quello corrispondente (es.
Python 3.11.x ('corso_python': conda)).
5.3 Configurazione del Terminale Integrato
Sezione intitolata “5.3 Configurazione del Terminale Integrato”Se selezionando l’interprete il terminale integrato non attiva automaticamente l’ambiente (non mostra il prefisso tra parentesi), modificare le impostazioni:
-
Aprire le Impostazioni (
Ctrl + ,). -
Cercare “Terminal: Integrated > Default Profile”.
-
Assicurarsi che sia selezionato il profilo corretto (es.
PowerShellsu Windows obash/zshsu Linux/WSL) che è stato inizializzato conconda init.
5.4 Nota su Linting e Formatting
Sezione intitolata “5.4 Nota su Linting e Formatting”Anche in ambiente Conda, si raccomanda l’uso dell’estensione Ruff. Essendo Ruff un tool esterno (scritto in Rust), funziona indipendentemente dal fatto che i pacchetti Python siano gestiti da pip o conda. La configurazione illustrata nella guida precedente rimane valida ed efficace.
6. Conclusione
Sezione intitolata “6. Conclusione”L’ambiente Anaconda offre una piattaforma robusta per il calcolo scientifico. La corretta separazione degli ambienti tramite conda create è la chiave per mantenere un sistema pulito e riproducibile. Si invita il lettore a prestare massima attenzione alla gestione del PATH su Windows per evitare conflitti con altre installazioni software.