martes, 5 de agosto de 2014

Introducción a IPython



IPython es un intérprete interactivo parecido al que proporciona Python pero que incorpora muchas mejoras que lo hacen muy apetecible. Su desarrollo fue iniciado en el año 2001 por el colombiano Fernando Pérez y fue concebido esencialmente como una herramienta personal para facilitar el trabajo científico aplicado al análisis de datos y a la computación paralela.

Su evolución permanente la ha dotado de características que interesan cada vez a más personas. Tiene características que resultan de interés tanto a desarrolladores de software como a administradores de sistemas. Esas cualidades son las que trataremos fundamentalmente en el presente tutorial.

IPython no sólo permite ejecutar directamente código Python y depurarlo; también, desde el mismo intérprete podremos ejecutar cualquier comando del sistema operativo o scripts escritos en otros lenguajes (Bash, Perl, Ruby, etc.), sin necesidad de iniciar otras consolas.

Entre las mejoras, con respecto al intérprete de Python, señalamos el resaltado del texto utilizando colores y destacando los errores; la posibilidad de utilizar el tabulador para autocompletar la escritura de líneas; el acceso a un histórico de entradas y/o de salidas y un repertorio amplio de funciones propias denominadas funciones mágicas que aumentan vertiginosamente la potencia de IPython.

IPython, aparte del intérprete convencional que es totalmente personalizable, contaba con Notebook, una aplicación web que permitía registrar las sesiones de trabajo en cuadernos.

Como IPython como entorno interactivo tiene muchas aplicaciones en el año 2014 se anunció un proyecto separado para Notebook llamado Jupyter para el desarrollo de la aplicación web Jupyter Notebook y otras herramientas que permiten crear y compartir cuadernos de trabajo que pueden contener textos explicativos, ecuaciones, gráficos y código fuente con el resultado de su ejecución.

Con el tiempo el Proyecto Jupyter ha crecido y existen infinidad de cuadernos disponibles para su uso con soluciones que abarcan los distintos campos científicos.

(De las capacidades que brinda IPython para analizar datos y obtener representaciones gráficas con el módulo matplotlib, que tuvieron mucha importancia desde sus inicios, repasaremos algunos fundamentos).


Ir al índice del Tutorial de IPython