Como se apuntó en la entrada Python: El BASIC del nuevo milenio, el lenguaje Python está disponible para múltiples sistemas operativos, entre ellos Linux y Windows. En las últimas distribuciones de Linux y versiones de MacOS X Python ya está ahí, por lo que no es necesario instalar nada. En caso de que no sea así, basta con abrir el gestor de paquetes que corresponda y buscar python
para encontrar rápidamente los paquetes a instalar. En el caso de Ubuntu, que es la distribución de Linux más conocida, Python está instalado por defecto y puede ser localizado en el Centro de software Ubuntu al que corresponde la imagen inferior.
La instalación de módulos/extensiones de Python resulta, en Linux o MacOS X, igualmente fácil, ya que el gestor de paquetes normalmente ofrece la versión adecuada y se encarga de resolver las dependencias que pudieran existir, siendo posible siempre descargar el código fuente y compilar. Anecdóticamente la mayoría de tutoriales que se encuentran por la Web explican cómo instalar Python y sus extensiones en Linux, pero muy pocos detallan el proceso a seguir en Windows. Lógicamente se asume que un programador (puesto que va a usar Python) tendrá recursos suficientes como para arreglárselas por sí solito, pero por si acaso he decidido escribir esta breve entrada.
Lo primero que hemos de tener en cuenta es qué módulos de Python pretendemos usar, ya que de esto dependerá en parte la versión de lenguaje que tengamos que instalar. Actualmente hay dos ramas en desarrollo del núcleo de Python: la 3.x y 2.x, cuyas últimas versiones son la 3.1 y 2.7. La rama 3.x es, lógicamente, el futuro de Python, pero cuenta con algunos cambios que hacen necesario adecuar el código pensado para versiones previos. Ésta es la razón de muchos módulos aún no estén disponibles para usar con Python 3.x. En la rama 2.x la versión más alta es la 2.7, pero también hay una rama 2.6.x que sigue manteniéndose resolviendo los fallos que se detectan. La última versión de dicha rama, la 2.6.6, se lanzó hace ahora un mes y es importante, ya que muchos módulos populares funcionan sobre Python 2.6.x, pero no con Python 2.7.x ni Python 3.x.
Es importante, en consecuencia, hacer una revisión de los módulos que vamos a necesitar y la dependencia que tienen respecto a la versión de Python que debe tenerse instalada. Asumiendo que vayamos a usar Python para realizar tareas de análisis de datos, como es mi caso, nos resultarán imprescindibles al menos los tres siguientes módulos:
Se da la circunstancia de que a día de hoy, 27 de septiembre de 2010, ninguno de estos tres módulos se ha actualizado para su uso con Python 3.x ni 2.7.x, sino que esperan encontrar en el sistema alguna versión de la rama 2.6. Podríamos descargar el código fuente y compilarlo nosotros mismos, pero seguramente nos resultará difícil corregir los problemas que pudieran surgir debidos a los cambios que ha experimentado el lenguaje, especialmente en el caso de la versión 3.1, dado que no conocemos el código a fondo. Por ello lo recomendable es instalar Python 2.6.6 y esperar a que esos módulos se actualicen para después cambiar a la versión 3.1. Dicho cambio no representará un gran obstáculo, ya que existe una herramienta que se encarga de realizar las conversiones necesarias en el código fuente.
Partiendo de estas premisas (que recuerda son válidas en esta fecha, pero cambiarán en el futuro), los pasos a seguir para instalar todos los elementos y comprobar su funcionamiento serían los siguientes:
import datetime
y pulsamos Intro, escribimos print "Hola desde Python", datetime.date.today(), "Torre de Babel"
y al pulsar de nuevo Intro debemos obtener la respuesta que aparece en azul en la imagen inferior.
Finalmente, basta con pulsar F5 para ejecutar el guión (habrá que guardarlo antes) y comprobar el resultado. Si aparece una ventana como la inferior, mostrando una gráfica de la función seno, es que todo ha ido bien.
Este guión usa la función arange()
del módulo numpy
, una función de interpolación del módulo scipy
y el objeto pyplot
de matplotlib
para representar los datos, por lo que en pocas líneas comprobamos la correcta instalación de todos ellos. A partir de este momento ya tenemos todo lo necesario para usar Python en tareas de análisis de datos.
Torre de Babel - Francisco Charte Ojeda - Desde 1997 en la Web