You are on page 1of 67

TUTORIAL DE IPYTHON

Universidad Nacional de Colombia


M a t e r i a l d e ap o y o e l a b o r a d o c o m o a p o y o a la materia Mtodos Numricos D i e g o C a m i l o P e a Ra m r e z ( d o c e n t e )

Twitter: @nervencid
1

CONTENIDO
INTROCUCCIN IPYTHON INSTALACIN IPYTHON CONSOLA CARPETAS Y CONSOLA FUNCIONES MAGICAS (%magic) Y COMANDOS ESPECIALES CONSOLA QT NOTEBOOK

CONTENIDO

QUE SE PUEDE HACER CON HTML E IPYTHON? QUE PODEMOS HACER DENTRO DEL NOTEBOOK? QUE PODEMOS HACER DENTRO DEL NOTEBOOK?(NOTA IMPORTANTE) BIBLIOGRAFIA

INTRODUCCIN
Python es una herramienta poderosa en el anlisis numrico y ofrece , sin embargo muchas veces no parece ser muy amigable para quienes no tienen ni idea de programacin. Otra necesidad que nos incumbe, es la necesidad de tener a mano todas las libreras necesarias para anlisis numrico sin necesidad de padecer problemas de compatibilidad o de versiones. Como lograr esto?, la respuesta puede venir de el navegador Web, y de la creciente tendencia del trabajo colaborativo a travs de las tecnologas de la informacin.
4

IPYTHON
IPython es un shell interactivo que aade funcionalidades extra al modo interactivo incluido con Python, como resaltado de lneas y errores mediante colores, una sintaxis adicional para el shell, autocompletado mediante tabulador de variables, mdulos y atributos; entre otras funcionalidades. Es un componente del paquete SciPy.[1]
5

IPYTHON

IPython viene siendo desarrollado desde el ao 2001 por el Colombiano Fernando Prez, quien en Marzo de 2013 recibi el premio de la Free Software Foundation[2]

INSTALACION IPYTHON

Las instrucciones de instalacin para los diferentes entornos tanto Linux, MacOS o Windows pueden encontrarse en la pagina oficial de Ipython [3]: http://ipython.org/install.html

CONSOLA
La consola es la herramienta bsica de desarrollo de IPython es la primera interfaz de usuario con la que nos encontramos para iniciarla solo deberemos escribir, bien sea en la linea de comandos de windows:

O la teminal de linux (o MacOS).

CONSOLA
Apariencia en Windows (XP en este caso):

CONSOLA
Apariencia en Linux:

1 0

CONSOLA
Otra forma de iniciar en la consola IPython puede ser: Lo cual cambiara ligeramente la presentacin esttica del shell, esto con el propsito de poder diferenciar sesiones.

1 1

CONSOLA
Desde aqu ya podremos trabajar con la sintaxis de Python (Para este tutorial Python 3).

1 2

CONSOLA
Podemos llamar la ayuda general de IPython de la siguiente forma escribiendo en la linea de comandos:

1 3

CONSOLA
Lo cual desplegara lo siguiente:

1 4

CONSOLA
Tambin podemos pedir ayuda de cualquier funcin o mtodo de IPython de forma similar, por ejemplo si queremos obtener informacin de '%magic' lo podemos hacer as:

1 5

CONSOLA
Tambin podemos llamar la ayuda rapida de IPython de la siguiente forma:

1 6

CONSOLA
Lo cual desplegara lo siguiente:

1 7

CONSOLA
Tambin podemos obtener ayuda de lo que creemos mientras vamos en marcha, por ejemplo si tenemos:

1 8

CARPETAS Y CONSOLA
Podemos navegar en las carpetas con el comando 'cd' de la siguiente forma, por ejemplo:

1 9

CARPETAS Y CONSOLA
Sin embargo la poltica de Ipython es que el lenguaje este primero, por lo cual 'cd', puede asignarse como una variable aunque esto har que no podamos usar el comando 'cd' :

2 0

CARPETAS Y CONSOLA
Esto no es problema ya que podemos utilizar el comando '%cd' de la siguiente forma, por ejemplo:

2 1

FUNCIONES MAGICAS (%magic) Y COMANDOS ESPECIALES


Como ya habamos visto el comando '%cd' nos permite navegar entre carpetas, ya aunque NO ES VALIDO en la sintaxis estndar de IPython, nos permiten controlar IPython como tal. Por ejemplo si deseamos correr un archivo podemos usar '%run' de la siguiente forma, no olvidar ubicarse en la carpeta que contiene dicho archivo (Ayudarse con la tecla TAB):

2 2

FUNCIONES MAGICAS (%magic) Y COMANDOS ESPECIALES


Tambin podemos ver su cdigo fuente con el comando '%edit':

2 3

FUNCIONES MAGICAS (%magic) Y COMANDOS ESPECIALES


IPython cuenta con otros comando especiales para hacer pruebas de red como '!ping':

2 4

FUNCIONES MAGICAS (%magic) Y COMANDOS ESPECIALES


Con '%pwd' podemos saber en que directorio estamos actualmente:

2 5

FUNCIONES MAGICAS (%magic) Y COMANDOS ESPECIALES


Con el comando 'ls' podemos saber que archivos y carpetas hay en la carpeta actual:

2 6

FUNCIONES MAGICAS (%magic) Y COMANDOS ESPECIALES


Mas informacin sobre comandos especiales puede ser consultada aqu: http://ipython.org/ipython-doc/dev/interactive/tutorial.html

2 7

CONSOLA QT
Otra herramienta til de IPython es la consola QT, la cual puede ser desplegada si escribimos en el terminal o linea de comandos:

2 8

CONSOLA QT

2 9

CONSOLA QT
Con la linea anterior los comandos '--pylab' e 'inline' nos permite usar a 'pylab' como 'backend' y nos permite generar grficas en la misma consola, ademas de corregir de forma limitada cosa que no se puede hacer con la 'terminal' o la linea de comandos estndar

3 0

CONSOLA QT

3 1

CONSOLA QT
Con la linea anterior los comandos '--pylab' e 'inline' nos permite usar a 'pylab' como 'backend' y nos permite generar grficas en la misma consola, ademas de corregir de forma limitada cosa que no se puede hacer con la 'terminal' o la linea de comandos estndar

3 2

CONSOLA QT
Para mas informacin podemos consultar aqu: http://ipython.org/ipython-doc/dev/interactive/qtconsole.ht ml

3 3

NOTEBOOK
IPython no posee simplemente la consola, sino todo un entorno de desarrollo integrado mediante el cual podemos escribir y correr cdigo, grficar, e incluso documentar sobre la marcha. Esto gracias al Notebook, el cual nos ofrece una interfaz de usuario amigable y comoda para poder aprovechar mas eficientemente las caracteristicas de IPython, podemos lanzar el Notebook desde la 'terminal' de Linux (o MacOS) as: O la linea de comandos de windows as:

3 4

NOTEBOOK

Automticamente se debera abrir el navegador principal (Chrome, Firefox, Opera, etc...) y acceder a la interfaz web del Notebook de Ipython.

3 5

NOTEBOOK

3 6

NOTEBOOK
La direccin del localhost si corremos El Notebook localmente Directorio sobre el cual esta Trabajando el Notebook Actualizar lista de Notebooks Crear nuevo Notebook

Borrar o cerrar el Notebook

Lista de Notebooks

3 7

NOTEBOOK
Por defecto IPython trabaja en el 'home' del usuario si es Linux o en 'C:\Documents and Settings\Usuario' si es Windows. Tambien podemos lanzar el Notebook desde una carpeta en especifico como por ejemplo: '/home/diegonimus/IPython', de la siguiente forma o bien navegar en las carpetas del equipo con el comando '%cd' visto anteriormente:

OJO!, Esto es la carpeta en la que se desee Trabajar

3 8

NOTEBOOK
Al crear un nuevo Notebook, nos toparemos con la siguiente interfaz:
Titulo del documento y La ultima vez que fue guardado Barra de Mens

Barra de Herramientas

Celda

Tipo de la Celda seleccionada

3 9

NOTEBOOK
Los comandos de la consola funcionan de igual forma en el Notebook, solo que podemos crear pequeos fragmentos (o cell) de codigo paralelamente a documentacion y ejecutarlos en tiempo real bien sea haciendo click en "run cell" o por medio de teclado mediante "Shift+Enter".

4 0

NOTEBOOK

Run Cell

Interrupt

4 1

NOTEBOOK
Las celdas (cell) son la unidad fundamental dentro del notebook y IPython ofrece los siguientes tipos de celdas:

Code: Aqui escribimos el codigo Markdown: Sirve para para escribir texto como comentarios, teorias, etc... Raw Text: Al igual que el 'Markdown' puede servir para escribir comentarios, sin embargo puede ser util tambien para documentar codigo que no deseemos que se ejecute Heading 1-6: Al ser un documento web, el Notebook nos permite embeber etiquetado HTML dentro de nuestro documento siendo estas etiquetas 'Heading', las mismas de HTML
4 2

NOTEBOOK
Para tener mas ayuda sobre los atajos de teclado , use Ctrl+m+h

4 3

QUE SE PUEDE HACER CON HTML E IPYTHON?


Las celdas tipo "Markdown" pueden procesar algunas etiquetas de HTML, lo cual nos permite beneficiarnos de varias caractersticas de HTML como por ejemplo:

4 4

QUE SE PUEDE HACER CON HTML E IPYTHON?


Embeber paginas web dentro del documento:

URL de la pgina
4 5

QUE SE PUEDE HACER CON HTML E IPYTHON?


Embeber paginas web dentro del documento (resultado esperado):

4 6

QUE SE PUEDE HACER CON HTML E IPYTHON?


Embeber videos de youtube:

URL del video

4 7

QUE SE PUEDE HACER CON HTML E IPYTHON?


Embeber videos de youtube (resultado esperado):

4 8

QUE SE PUEDE HACER CON HTML E IPYTHON?


Embeber videos guardados localmente:

Ubicacin y nombre del Archivo de video

4 9

QUE SE PUEDE HACER CON HTML E IPYTHON?


Embeber videos guardados localmente (resultado esperado):

5 0

QUE SE PUEDE HACER CON HTML E IPYTHON? (NOTA IMPORTANTE)


NOTA IMPORTANTE: Algunos tag de HTML5, fallan segn el navegador, como por ejemplo el de video del ejemplo anterior, por ejemplo es aconsejable probar el notebook con varios navegadores, en el ejemplo anterior el ejemplo fall con firefox y chrome, pero funcion con Opera

5 1

QUE SE PUEDE HACER CON HTML E IPYTHON?


Embeber audio alojado localmente:

Ubicacin y nombre del Archivo de Audio

5 2

QUE SE PUEDE HACER CON HTML E IPYTHON?


Embeber audio alojado localmente (resultado esperado):

5 3

QUE PODEMOS HACER DENTRO DEL NOTEBOOK?


Como hemos visto uno de los principales fuertes de IPython es su Notebook, sin embargo hasta ahora hemos visto que se puede correr cdigo en tiempo real, documentarlo y trabajar con etiquetado HTML. Sin embargo tambin podemos mejorar el contenido de nuestro notebook, por ejemple insertar ecuaciones o trabajar con lgebra simblica como se muestra a continuacin:

5 4

QUE PODEMOS HACER DENTRO DEL NOTEBOOK?

5 5

QUE PODEMOS HACER DENTRO DEL NOTEBOOK?


O incluso escribir ecuaciones en formato LaTex con celdas 'Markdown':

5 6

QUE PODEMOS HACER DENTRO DEL NOTEBOOK?


Tambin podemos escribir ecuaciones en formato LaTex, con las celdas de cdigo, usando Python:

5 7

QUE PODEMOS HACER DENTRO DEL NOTEBOOK?


Otra caracterstica muy til es poder trabajar con grficas empleando Matplotlib, veremos dos formas de trabajar con grficas: la primera permite embeber la grfica directamente sobre el documento en el que estamos trabajando, antes de hacer esto recordemos que lo podemos hacer en la consola QT, llamndola desde el Notebook de la siguiente forma:

5 8

QUE PODEMOS HACER DENTRO DEL NOTEBOOK?


Ahora bien la primera forma de trabajar con grficas dentro del mismo Notebook es usando como 'backend' solo 'pylab' ejecutando la siguiente celda:

5 9

QUE PODEMOS HACER DENTRO DEL NOTEBOOK?


Probemos con una grfica de puntos aleatorios, lo cual debera verse as:

6 0

QUE PODEMOS HACER DENTRO DEL NOTEBOOK?


La segunda forma es utilizando las libreras QT, ANTES de ejecutar la siguiente linea debemos REINICIAR para NO causar conflictos EN CASO de haber usado previamente como 'backend' solamente 'pylab' (con la linea: '%pylab inline'):

6 1

QUE PODEMOS HACER DENTRO DEL NOTEBOOK?


Si probamos con una grfica debera abrirse una ventana independiente al navegador:

6 2

QUE PODEMOS HACER DENTRO DEL NOTEBOOK?


Finalmente para concluir cabe sealar que podemos con HTML como embeber imgenes (aveces falla y se debe tener cuidado con que tipo de imagen es) con cdigo:

6 3

QUE PODEMOS HACER DENTRO DEL NOTEBOOK?

6 4

QUE PODEMOS HACER DENTRO DEL NOTEBOOK?


O incluso video, bien sea de youtube:

6 5

BIBLIOGRAFIA
[1] http://es.wikipedia.org/wiki/IPython [2] http://fperez.org/ [3] http://ipython.org/install.html [4] http://ipython.org/videos.html [5] http://ipython.org/documentation.html [6] http://ipython.org/ipython-doc/rel-0.13.1/index.html [7] http://nbviewer.ipython.org/ [8] https://github.com/ipython/ipython/wiki/A-gallery-of-interes ting-IPython-Notebooks

6 6

SOBRE EL AUTOR Y EL CONTENIDO


A menos que se informe de otra manera esta obra est bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 2.5 Colombia.

Diego Camilo Pea Ramrez Bogot, Colombia Abril de 2013 Twitter: @nervencid
6 7

You might also like