IPython
| IPython
| |
|---|---|
|
| |
|
Shell IPython con finestra di stampa matplotlib | |
| Dati di base
| |
| sviluppatore | Fernando Perez |
| Anno di pubblicazione | 2001 |
| Versione attuale |
7.26.0 ( 1 agosto 2021 ) |
| sistema operativo | multipiattaforma |
| linguaggio di programmazione | Python , JavaScript , C |
| Licenza | Licenza BSD a 3 clausole |
| di lingua tedesca | sì |
| ipython.org | |
IPython è un interprete della riga di comando per lavorare in modo interattivo con il linguaggio di programmazione Python . Non è una semplice estensione della shell incorporata in Python (vedi uso interattivo di Python), ma una suite software per lo sviluppo e l'esecuzione di programmi Python. Funzioni come l' introspezione , il completamento della riga di comando , l' incorporamento di rich media e vari frontend (terminali, basati su Qt o basati su browser ) consentono di sviluppare applicazioni Python con un livello di praticità noto da software come Matlab o Mathematica . IPython può anche essere visto come un ambiente di sviluppo integrato . In effetti, IPython è un framework client-server che può essere utilizzato per calcoli ad alte prestazioni da computer paralleli .
origine
IPython è stato sviluppato nel 2001 da Fernando Pérez, proviene dal dominio dell'informatica scientifica , poiché conosceva un notebook di Mathematica e gli mancava in Python, ha iniziato a programmarne uno per Python.
L'integrazione di Matplotlib nella superficie del notebook lo rende un concorrente open source per il diffuso software numerico Matlab , motivo per cui la combinazione di IPython con Matplotlib viene spesso definita Pylab .
Architettura e taccuino
Una caratteristica speciale di IPython è l'installazione della coda messaggi ØMQ (vedi Message Oriented Middleware ). L'architettura di IPython separa chiaramente il backend come unità di elaborazione , come l'interprete Python, dal frontend come livello di visualizzazione . Questa separazione consente a IPython di essere utilizzato ampiamente universalmente per diversi backend (spesso chiamati anche kernel ) e frontend. Con l'aiuto del server Web Python basato su eventi Tornado e WebSockets , un'interfaccia Web rappresenta un possibile front-end, che consente di utilizzare IPython in modo flessibile nel Web moderno ( Web 2.0 ).
IPython è orientato ai documenti . Un documento IPython è indicato come un taccuino , come è consueto in campo scientifico . Un notebook è un file JSON che contiene un elenco ordinato di celle di input e output che possono visualizzare codice, testo normale , output LaTeX , grafici e vari formati multimediali. In questo modo, un notebook IPython differisce fondamentalmente da un semplice script Python, che (di solito) contiene solo codice.
A partire dalla versione 4.0, il progetto è stato suddiviso nel suo insieme e ulteriormente modularizzato. D'ora in poi, IPython non è più venduto come un unico pacchetto monolitico, ma è ora limitato ai componenti principali collegati a Python. Tutti i moduli indipendenti dalla lingua (come il notebook, la Qtconsole e la coda dei messaggi), d'altra parte, sono stati affidati a un nuovo progetto chiamato Jupyter e possono quindi essere utilizzati e aggiornati indipendentemente da IPython in futuro.
link internet
- Sito ufficiale IPython
- Sito web di Jupyter
- Capitolo iPython nel tutorial di Jupyter
- Articolo di gennaio 2014: IPython: un ambiente unificato per l'analisi interattiva dei dati
Evidenze individuali
- ↑ cronologia delle versioni di ipython . (consultato il 12 agosto 2021).
- ↑ Il progetto open source ipython su Open Hub: pagina delle lingue . In: Open Hub . (consultato il 19 luglio 2018).
- ↑ ipython.org . (consultato il 20 luglio 2017).
- ↑ Fernando Perez: Il taccuino IPython: una retrospettiva storica. Estratto il 28 novembre 2019 .
- ↑ La versione IPython 4 completa la modularizzazione del progetto , rapporto su heise.de del 12 agosto 2015; Estratto il 20 agosto 2015.