Forum >> Programmazione Python >> IDE ed Editor >> IDE Jupyter notebook - come funziona

Pagina: 1

Salve a tutti,

Ho scaricato la distro Anaconda che include molte cose: l'interprete Python, tanti moduli e librerie e l' IDE Jupyter Notebook. Da quanto ho capito, Jupyter Notebook e' una IDE che usa il web browser come interfaccia. I notebook sono file JSON che vengono tradotti in .py dalla kernel.

Scaricare Jupyter significa scaricare:


a) Una kernel Python

b) Una componente software server

c) Una componente scritta in JS che interagisce con il nostro browser


Ho capito correttamente? Il browser comunica con il server che a sua volta comunica con la kernel.

La kernel sarebbe l'interprete Python o e' qualcosa di piu'?

La kernel di Jupyter e' lo stesso interprete Python che Anaconda utilizza o si tratta di due interpreti diversi?


Grazie e saluti,

Federico


--- Ultima modifica di Confuso83 in data 2021-09-12 17:47:59 ---
Uhm. Allora. Dal punto di vista di python, "Jupyter" è un pacchetto come tanti altri. Se non avessi fatto la (molto molto molto discutibile) cosa di installarti Anaconda, potresti tranquillamente installarlo con Pip in una distribuzione di Python "normale".


Faresti semplicemente "pip install ipython" (in un virtual environment, preferibilmente) e avresti la shell "potenziata" Ipython, che si usa normalmente nella finestra del terminale, ma che offre una certa quantità di cose in più; di base, comunque, è una normale shell Python (come quella che ottieni invocando "python" dal terminale, insomma).


Inoltre, sulla base di Ipython, potresti anche installare Jupyter vero e proprio, che è un IDE con interfaccia grafica (nel browser). Anche questo è un pacchetto python, e si installa con "pip install jupyter". Jupyter è un IDE vero e proprio, ovvero un ambiente di programmazione più evoluto. Comunque è basato su una shell, quindi non si usa tipicamente per scrivere *programmi* Python. Jupyter viene usato per comporre quelle "presentazioni con sessione di shell interattiva" che vedi ovunque, e ha molte funzionalità. Serve soprattutto in ambito scientifico, ma qui basta che googli un po' e trovi dozzine di esempi. Un "notebook" (ovvero una presentazione) di Jupyter è un file che contiene diversi "box", che possono essere testi, immagini, o (soprattutto) sessioni interattive della shell. Puoi salvare i notebook in un formato specifico (".ipynb"), che comunque *non* è un programma Python eseguibile, ovviamente, ma è appunto un notebook che puoi ri-aprire e riusare in seguito con Jupyter. Puoi anche esportare in html, o in pdf, o cose del genere.


Se hai Anaconda, allora dentro ci trovi anche sia la shell Ipython, sia Jupyter. (Anaconda è solo una distribuzione di Python, dove oltre a Python ci sono anche una marea di pacchetti in più). Puoi avviare Jupyter direttamente dall'interfaccia di Anaconda, invece che dal terminale, a questo punto è più comodo in questo modo.




Grazie RicPol! Troppo gentile :)



"...potresti tranquillamente installarlo con Pip in una distribuzione di Python "normale"...."

Quale altra distribuzione avresti installato invece di Anaconda? So che e' possibile installare anche jupyter da solo senza alcuna distribuzione.


"...Se hai Anaconda, allora dentro ci trovi anche sia la shell Ipython, sia Jupyter..."

Quindi installare Anaconda equivale ad avere due shell diverse. Quella che chiami shell e' l'interprete Python? Shell e interprete sono sinonimi? Jupyter parla di kernel che penso sia la stessa cosa dell'interprete.




Grazie!!!



Beh, non installerei Anaconda, mi accontenterei della distribuzione ufficiale di Python. Quella che trovi su python.org, insomma.





No, la "shell di Python" è... la shell di Python, quella con il prompt ">>>". Jupyter è *una* shell di Python, con delle funzionalità in più. Un'altra shell di Python è quella di IDLE. La shell di Python più elementare possibile è quella che ottieni nella finestra del terminale del tuo sistema operativo, invocando "python" al prompt.


Jupyter usa il termine "kernel" perché sono un po' degli esagerati. "Kernel" si usa per i sistemi operativi, in genere. Comunque, puoi dire che il "kernel" di Jupyter sia la parte che ne garantisce le funzionalità fondamentali. Il kernel di Jupyter è in sostanza la shell Ipython (più qualsiasi altra cosa quelli di Jupyter considerano "kernel"... visto che usano il termine, possono metterci dentro quello che credono... è solo una parola).


Detto questo, ho scritto un libro su come usare Python in Windows, con tutte le spiegazioni su che cosa è un terminale, che cosa è una shell, che cosa è anaconda, che cosa è... tutto.

GRAZIE!!!


Pagina: 1



Esegui il login per scrivere una risposta.