En esta clase haremos una rápida introducción al lenguaje Python y al intérprete IPython, así como a su Notebook. Veremos como ejecutar un script y cuáles son los tipos y estructuras básicas de este lenguaje. Seguro que ya has oído hablar mucho sobre las bondades de Python frente a otros lenguajes. Si no es así, échale un vistazo a esto. ¿Estás preparado? ¡Pues Empezamos!
In [1]:
import this
Vamos a ver mi_primer_script.py
que está en la carpeta scripts
. De momento no te preocupes por el código, ya habrá tiempo para eso...
In [10]:
!cat ../scripts/mi_primer_script.py
In [18]:
%run ../scripts/mi_primer_script.py
El método más simple es usar un editor (tu preferido) y ejecutar el script desde la línea de comandos. Pero existen también IDEs (integrated development environment pensados para facilitar la escritura de código y tener al alcance de la mano otras herramientas como profilers, debuggers, explorador de variables... Entre los más adecuados para la programación científica se encuentran IEP y Spyder (instalado con Anaconda).
IPython no es más que un intérprete de Python con algunas mejoras sustanciales, pero además su interfaz notebook es más cómoda de manejar que la línea de comandos y nos da un poco más de flexibilidad.
Será nuestra herramienta de trabajo durante el curso. Esto que estás leyendo ahora no es más que un notebook de IPython, que como diremos luego además de código puede contener texto e imágenes. Pero veamos primero cómo funciona.
Al iniciar el notebook de IPython, en la pantalla principal podemos ver una ruta y una lista de notebooks. Cada notebook es un archivo que está almacenado en el ordenador en la ruta que aparece. Si en esa carpeta no hay notebooks, veremos un mensaje indicando que la lista de notebooks está vacía.
Al crear un notebook o al abrir uno nuevo se abre la interfaz de IPython propiamente dicha donde ya podemos empezar a trabajar. Es similar a un intérprete, pero está dividida en celdas. Las celdas pueden contener, código, texto, imágenes...
Cada celda de código está marcada por la palabra In [<n>]
y están numeradas. Tan solo tenemos que escribir el código en ella y hacer click arriba en Cell -> Run, el triángulo ("Run cell") o usar el atajo shift + Enter
. El resultado de la celda se muestra en el campo Out [<n>]
, también numerado y coincidiendo con la celda que acabamos de ejecutar. Esto es importante, como ya veremos luego.
Si en la barra superior seleccionas Markdown (o usas el atajo Shift-M
) en lugar de Code puedes escribir texto:
In [4]:
from IPython.display import Image
Image(url="../images/markdown_cell.gif")
# Fuente Practical Numerical Methods with Python
# http://openedx.seas.gwu.edu/courses/GW/MAE6286/2014_fall/about
Out[4]:
También ecuaciones en latex y mucho más. Esto es una herramienta muy potente para explicar a alguien o a ti mismo lo que tu código hace, para hacer un informe, un trabajo, escribir en un blog...
Markdown es un lenguaje aparte, no te preocupes por él demasiado ahora, irás aprendiendo sobre la marcha... Para cuando lo vayas necesitando, aquí tienes una chuleta.
In [5]:
Image(url="../images/markdown_math.gif")
# Fuente Practical Numerical Methods with Python
# http://openedx.seas.gwu.edu/courses/GW/MAE6286/2014_fall/about
Out[5]:
Puedes mover las celdas de un lugar a otro de este modo:
In [6]:
Image(url="../images/cell_move.gif")
# Fuente: Practical Numerical Methods with Python
# http://openedx.seas.gwu.edu/courses/GW/MAE6286/2014_fall/about
Out[6]:
El Notebook tiene además numerosos atajos que irás aprendiendo sobre la marcha, puedes consultarlos en Help > Keyboard Shortcourts