Se sugiere fuertemente instalar python mediante la distribución llamada Anaconda, que se encargará de proporcionar la mayoría de los paquetes necesarios para computación científica, y de gestionar limpiamente la instalación de nuevos paquetes.
Basta descargar y ejecutar el archivo, siguiendo las instrucciones por defecto. En caso de duda se recomienda mantener las configuraciones por defecto, y si es necesario consultar el manual.
Página de descarga de Anaconda
Instrucciones de instalación
Para testar:
Digitar los siguientes comandos y ver si los reconoce
conda list
python --version
jupyter notebook # Debe abrir un jupyter notebook en el navegador de internet
where python
where conda
Además, ahora debe estar disponible en la lista de programas un conjunto de herramientas gráficas llamado Anaconda navigator con esta apariencia:
Una vez confirmada la instalación, puede resultar útil actualizar la distribución, para lo cual abrimos una ventana de línea de comandos (buscar por cmd
en la lista de programas) y digitamos lo siguiente:
conda update conda
conda update --all
En los mismos links de arriba se encuentra el archivo para descargar y las instrucciones. De forma compacta:
CTRL
+ALT
+T
cd Downloads/
bash Anaconda3-5.2.0-Linux-x86_64.sh
PATH
para que conda y python sean visibles para todo el sistema. En otro caso, posiblemente tendremos que hacerlo a mano agregando al archivo ~/.bashrc
la línea:export PATH="/home/nombredeusuario/anaconda3/bin:$PATH"
Abrir un nuevo terminal y digitar los siguientes comandos a ver si los reconoce:
conda list
python --version
jupyter notebook # Debe abrir un jupyter notebook en el navegador de internet
which python
which conda
Igual que se explicó para Windows, conviene actualizar la distribución recién instalada, digitando lo siguiente en el terminal:
conda update conda
conda update --all
Python se puede utilizar dentro de diferentes ambientes de programación. Al más básico de ellos se accede simplemente digitando python
en la línea de comandos, pero este ambiente no es muy práctico, así que lo cerramos digitando exit()
.
Una versión mejorada es el ambiente conocido como IPyton, abreviatura de interactive python. Para acceder a él digitamos ipython
en un terminal. Obtendremos un ambiente similar al anterior, pero esta vez con resaltado de sintaxis (syntax highlighting), un patrón de colores que favorece identificar los distintos tipos de elementos:
En este ambiente podemos ir digitando comandos de python y estos serán ejecutados línea a línea cada vez que pulsamos enter
.
Ensaya a abrir la interfaz y digitar los comandos que se presentan a continuación. Al terminar de explorar, puedes cerrar ipython con exit
.
print('Hola mundo!')
2 * 4 - (7-1) / 3 + 1.3
2 ** 10
# esta linea es un comentario, no hace nada
a, b = 5, 100
print(a+b)
help(print)
print?
Tip: En la interfaz de ipython pulsa las flechas arriba ↑ y abajo ↓ del teclado para hallar un comando que desees repetir sin tener que digitarlo nuevamente
Una ventaja de ipython es que podemos verificar el resultado de un conjunto de comandos rápidamente. Sin embargo, con la práctica notaremos algunas situaciones inconvenientes. Por ejemplo, si en la siguiente secuencia nos preguntamos el valor final de b
para un nuevo valor de a
, distinto de 10, tendremos que introducir todas las líneas de nuevo:
a = 10
b = a**2
b = b+1e5
b = np.sqrt(b)
Otro caso: al hacer un gráfico en ipython la interfaz queda bloqueada hasta cerrar la ventana emergente, lo cual impide examinarlo al mismo tiempo que vamos digitando nuevos comandos. Compruébalo:
# Primero importamos las bibliotecas y módulos
# con las funciones que necesitamos usar.
# Cada biblioteca es como una caja de herramientas
# y está organizada por cajas más pequeñas: módulos.
# En este caso cargamos la biblioteca numpy (con
# funciones de cómputo numérico) y el módulo pyplot
# de la biblioteca matplotlib (para los gráficos).
# Opcionalmente podemos asociar nombres cortos a
# ellas, hay abreviaciones estándar como: plt, np.
import matplotlib.pyplot as plt
import numpy as np
# Imprima los valores de x,y para inspeccionarlos
x = np.arange(1,12,2)
y = x**2 + 121/x
# Ahora graficamos y vs x como cuando se tabula para
# graficar a mano. "or-" le indica a pyplot que
# queremos usar círculos rojos (red) y línea continua.
# Examine la ayuda de plt.plot para ver más opciones.
plt.plot(x,y,"or-")
Otro ambiente se abre digitando jupyter notebook
en un terminal, o buscando la opción correspondiente en el Anaconda navigator. Debe desplegarse algo así:
A la izquierda vemos los contenidos de la carpeta donde estamos: subcarpetas y archivos de jupyter notebook si los hay (extensión .ipynb
). A la derecha vemos opciones para cargar archivos desde otra ubicación o para crear un nuevo entorno de programación:
Al elegir python se despliega un nuevo notebook, en el cual podemos programar en python separando el código en bloques o celdas. Esto tiene la ventaja de ejecutar todas las líneas de una celda con un solo click en el botón Run
, y de mantener las gráficas en el mismo entorno mientras seguimos programando. Aquí un tutorial sugerido para iniciantes.
En jupyter notebook además podemos combinar celdas de código con celdas de texto para lograr un producto más completo, con explicaciones, imágenes e hiperlinks, el cual después puede ser exportado a pdf o html entre otros. De hecho, esta página que estás navegando fue generada a partir de un archivo de jupyter notebook.