Appendice B — Jupyter Notebook

Il Jupyter Notebook si configura come uno strumento estremamente potente e flessibile per la programmazione in Python, permettendo di integrare codice, note e documentazione in un unico ambiente interattivo. Questa piattaforma è particolarmente apprezzata nell’ambito della data science, dell’analisi di dati, e dell’insegnamento, grazie alla sua capacità di combinare esecuzione di codice, visualizzazione di risultati, annotazioni testuali, e molto altro, in un formato facilmente condivisibile e riproducibile.

B.1 Configurazione Locale per Jupyter Notebook

Per iniziare a lavorare con i Jupyter Notebook nel proprio ambiente di sviluppo locale, è necessario completare alcuni passaggi preliminari che assicurano una configurazione ottimale:

  1. Installazione di Python tramite Anaconda: Anaconda è una distribuzione di Python che include già Jupyter e altre librerie utili per la data science e l’analisi di dati. Seguendo le istruzioni dettagliate disponibili sul sito di Anaconda (e fornite in precedenza in questa dispensa), si può facilmente installare Python e Jupyter sul proprio sistema.

  2. Selezione di un Ambiente di Sviluppo Integrato (IDE): Visual Studio Code (VS Code) rappresenta una scelta eccellente per chi cerca un IDE versatile e gratuito. Disponibile al download dal sito ufficiale, VS Code supporta Python tramite l’installazione di una specifica estensione. Dopo aver installato VS Code, è possibile aggiungere il supporto per Python e per i Jupyter Notebook installando l’estensione “Python” disponibile nella sezione “Extensions”, identificabile dall’icona dei quattro quadrati. Per una completa integrazione dei notebook Jupyter, potrebbe essere necessario installare anche la libreria ipykernel.

B.2 Celle

I Jupyter Notebook sono organizzati in celle, elementi discreti che possono contenere codice o testo (markdown). La possibilità di cambiare il tipo di una cella tramite il menu “Cell” o la barra degli strumenti, selezionando “Code” per codice Python o “Markdown” per annotazioni testuali, rende i notebook estremamente versatili.

B.3 Formattazione del Testo con Markdown

Markdown permette di arricchire le celle di testo con formattazioni varie, creando un documento strutturato e leggibile. Ecco alcuni esempi:

  • Titoli: # Titolo per un titolo di primo livello, ## Sottotitolo per un secondo livello, e così via.
  • Elenchi: - Elemento per elenchi puntati, 1. Elemento per elenchi numerati.
  • Collegamenti: [Testo del link](URL) per inserire un link.
  • Enfasi: **grassetto** per il testo in grassetto, *corsivo* per il corsivo.

B.4 Comandi Magici in Jupyter Notebook

I Jupyter Notebook supportano i “comandi magici”, comandi speciali che iniziano con % (per comandi su una singola riga) o %% (per comandi che occupano un’intera cella). Questi comandi offrono funzionalità avanzate come:

  • %run: esegue un file Python esterno.
  • %timeit: valuta il tempo di esecuzione di una singola riga di codice.
  • %matplotlib inline: integra grafici Matplotlib direttamente nel notebook.
  • %load: carica il codice da un file esterno in una cella.
  • %reset: cancella tutte le variabili definite nel notebook.
  • %pwd e %cd: gestiscono il percorso della directory di lavoro.

Digitando %lsmagic in una cella, si può accedere all’elenco completo dei comandi magici disponibili, esplorando così ulteriori strumenti e funzionalità offerte da Jupyter Notebook.

In conclusione, i Jupyter Notebook rappresentano uno strumento indispensabile per chi lavora nel campo della programmazione e dell’analisi dati, grazie alla loro capacità di unire codice, visualizzazione dei dati, e annotazioni testuali in un unico documento interattivo e facilmente condivisibile.