🛠️ Jupyter in VS Code: Advanced Configuration
Percorso:
/programmazione/python/jupyter/config
::: info Una configurazione ottimizzata trasforma il notebook da semplice “block-notes” a un potente strumento di analisi e debugging. In questa pagina vedremo come configurare il rendering avanzato, il controllo di qualità del codice e la gestione delle risorse. :::
1. UI & Editor Optimization
L’interfaccia di default può essere raffinata per migliorare la leggibilità di flussi di lavoro complessi.
A. Impostazioni Raccomandate (settings.json)
Accedi alle impostazioni di VS Code (Ctrl + ,) e passa alla visualizzazione JSON per inserire questi parametri:
{
"notebook.lineNumbers": "on", // Numerazione righe interna alle celle
"notebook.cellToolbarLocation": "right", // Posizione icone di gestione cella
"notebook.formatOnSave.enabled": true, // Auto-format delle celle al salvataggio
"notebook.output.textLineLimit": 500, // Evita il lag con output troppo lunghi
"jupyter.askForKernelRestart": false, // Velocizza il workflow di restart
"notebook.stickyScroll.enabled": true // Mantieni visibile il nome della cella/sezione
}
B. Notebook Outline & Search
Usa la vista Outline nella barra laterale sinistra.
- VS Code genera automaticamente un indice basato sulle celle Markdown (H1, H2, H3).
- Permette di navigare istantaneamente in notebook da centinaia di celle.
2. Code Quality: Linting & Formatting
L’errore tipico dei notebook è produrre codice “sporco”. In VS Code possiamo forzare il rigore ingegneristico anche nei file .ipynb.
- Ruff Extension: Installa l’estensione Ruff. È in grado di analizzare e formattare le celle Jupyter quasi istantaneamente.
- Organize Imports: Abilita l’ordinamento automatico delle librerie per mantenere il primo blocco del notebook sempre pulito.
- Type Checking: Seleziona
Pylancecome Language Server per ricevere avvisi sui tipi (Type Hinting) direttamente dentro la cella.
3. Advanced Rendering (Data & Science)
Per analizzare dati provenienti da IA o Home Assistant, è fondamentale configurare i visualizzatori corretti.
A. Data Viewer (The Architect’s Choice)
Invece di limitarti a stampare un DataFrame Pandas con print(df), VS Code offre il Data Viewer:
- Esegui una cella con un oggetto DataFrame o una lista complessa.
- Apri il pannello Variables (icona in alto nella barra dei comandi del notebook).
- Clicca sull’icona accanto alla variabile per aprire una tabella interattiva in stile Excel, con filtri e ricerca.
B. Math & LaTeX
VS Code supporta nativamente il rendering di formule matematiche tramite KaTeX.
- Usa
$ E=mc^2 $per formule inline. - Usa
$$ ... $$per blocchi matematici centrati.
📉 Architettura del Rendering (Mermaid)
4. Estensioni Complementari Obbligatorie
Oltre all’estensione Jupyter, un architetto dovrebbe installare:
- Jupyter Cell Tags: Permette di etichettare le celle (es. per escludere celle di test durante l’export).
- Variable Viewer: Un pannello persistente che mostra l’occupazione di memoria di ogni variabile (critico se lavori con grandi dataset in RAM).
- Draw.io Integration: Per inserire diagrammi architetturali direttamente nelle celle Markdown senza file esterni.
💡 Note dell’Ingegnere (Performance)
::: warning ATTENZIONE: Memory Leak
A differenza degli script .py, Jupyter mantiene tutte le variabili in memoria finché non riavvii il Kernel.
- Best Practice: Usa il comando magico
%reset -fse hai caricato grandi modelli IA che non ti servono più per liberare la RAM (VRAM) senza chiudere il notebook. :::
Tags: #Config #Performance #DataVisualization #Linting #VSCode*