• Save
Tutorial de IPython
Upcoming SlideShare
Loading in...5
×
 

Tutorial de IPython

on

  • 4,377 views

Tutorial en español del shell interactivo IPython orientado a Web-service: Aqui aprenderemos desde los comandos básicos de Consola hasta el uso del Notebook, una herramienta que permite ejecutar, ...

Tutorial en español del shell interactivo IPython orientado a Web-service: Aqui aprenderemos desde los comandos básicos de Consola hasta el uso del Notebook, una herramienta que permite ejecutar, documentar e incluso embeber etiquetas HTML5.

Statistics

Views

Total Views
4,377
Views on SlideShare
4,361
Embed Views
16

Actions

Likes
5
Downloads
0
Comments
0

1 Embed 16

https://twitter.com 16

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

CC Attribution-NonCommercial-ShareAlike LicenseCC Attribution-NonCommercial-ShareAlike LicenseCC Attribution-NonCommercial-ShareAlike License

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Tutorial de IPython Tutorial de IPython Presentation Transcript

  • 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 Métodos Numéricos 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 INTROCUCCIÓN ● IPYTHON ● INSTALACIÓN IPYTHON ● CONSOLA ● CARPETAS Y CONSOLA ● FUNCIONES MAGICAS (%magic) Y COMANDOS ESPECIALES ● CONSOLA QT ● NOTEBOOK ● 2
  • CONTENIDO ¿QUE SE PUEDE HACER CON HTML E IPYTHON? ● ¿QUE PODEMOS HACER DENTRO DEL NOTEBOOK? ● ¿QUE PODEMOS HACER DENTRO DEL NOTEBOOK?(NOTA IMPORTANTE) ● BIBLIOGRAFIA ● 3
  • INTRODUCCIÓN Python es una herramienta poderosa en el análisis numérico y ofrece , sin embargo muchas veces no parece ser muy amigable para quienes no tienen ni idea de programación. Otra necesidad que nos incumbe, es la necesidad de tener a mano todas las librerías necesarias para análisis numérico 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 través de las tecnologías de la información. 4
  • IPYTHON IPython es un shell interactivo que añade funcionalidades extra al modo interactivo incluido con Python, como resaltado de líneas y errores mediante colores, una sintaxis adicional para el shell, autocompletado mediante tabulador de variables, módulos y atributos; entre otras funcionalidades. Es un componente del paquete SciPy.[1] 5
  • IPYTHON IPython viene siendo desarrollado desde el año 2001 por el Colombiano Fernando Pérez, quien en Marzo de 2013 recibió el premio de la Free Software Foundation[2] 6
  • INSTALACION IPYTHON Las instrucciones de instalación para los diferentes entornos tanto Linux, MacOS o Windows pueden encontrarse en la pagina oficial de Ipython [3]: http://ipython.org/install.html 7
  • CONSOLA La consola es la herramienta básica 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). 8
  • CONSOLA Apariencia en Windows (XP en este caso): 9
  • CONSOLA Apariencia en Linux: 1 0
  • CONSOLA Otra forma de iniciar en la consola IPython puede ser: Lo cual cambiara ligeramente la presentación estética del shell, esto con el propósito 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 También podemos pedir ayuda de cualquier función o método de IPython de forma similar, por ejemplo si queremos obtener información de '%magic' lo podemos hacer así: 1 5
  • CONSOLA También podemos llamar la ayuda rapida de IPython de la siguiente forma: 1 6
  • CONSOLA Lo cual desplegara lo siguiente: 1 7
  • CONSOLA También 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 política 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 habíamos visto el comando '%cd' nos permite navegar entre carpetas, ya aunque NO ES VALIDO en la sintaxis estándar 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 También podemos ver su código 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 información 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 gráficas en la misma consola, ademas de corregir de forma limitada cosa que no se puede hacer con la 'terminal' o la linea de comandos estándar 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 gráficas en la misma consola, ademas de corregir de forma limitada cosa que no se puede hacer con la 'terminal' o la linea de comandos estándar 3 2
  • CONSOLA QT Para mas información 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 código, gráficar, 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 Automáticamente se debería 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 dirección 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 SettingsUsuario' 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 Menús 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 pequeños 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 características de HTML como por ejemplo: 4 4
  • ¿QUE SE PUEDE HACER CON HTML E IPYTHON? Embeber paginas web dentro del documento: URL de la página 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: Ubicación 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 según 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: Ubicación 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 código en tiempo real, documentarlo y trabajar con etiquetado HTML. Sin embargo también podemos mejorar el contenido de nuestro notebook, por ejemple insertar ecuaciones o trabajar con álgebra simbólica como se muestra a continuación: 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? También podemos escribir ecuaciones en formato LaTex, con las celdas de código, usando Python: 5 7
  • ¿QUE PODEMOS HACER DENTRO DEL NOTEBOOK? Otra característica muy útil es poder trabajar con gráficas empleando Matplotlib, veremos dos formas de trabajar con gráficas: la primera permite embeber la gráfica directamente sobre el documento en el que estamos trabajando, antes de hacer esto recordemos que lo podemos hacer en la consola QT, llamándola desde el Notebook de la siguiente forma: 5 8
  • ¿QUE PODEMOS HACER DENTRO DEL NOTEBOOK? Ahora bien la primera forma de trabajar con gráficas 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 gráfica de puntos aleatorios, lo cual debería verse así: 6 0
  • ¿QUE PODEMOS HACER DENTRO DEL NOTEBOOK? La segunda forma es utilizando las librerías 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 gráfica debería abrirse una ventana independiente al navegador: 6 2
  • ¿QUE PODEMOS HACER DENTRO DEL NOTEBOOK? Finalmente para concluir cabe señalar que podemos con HTML como embeber imágenes (aveces falla y se debe tener cuidado con que tipo de imagen es) con código: 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 Peña Ramírez Bogotá, Colombia Abril de 2013 Twitter: @nervencid 6 7