Contenidos
Python
Python es un lenguaje de programación muy utilizado actualmente en entornos relacionados con Data Science y Big Data
Su uso en librerías creadas por Google y otros gigantes tecnológicos ha hecho que en los últimos años se haya convertido en uno de los lenguajes más utilizados
Dentro de los lenguajes de programación, sus características son:
- Interpretado
El proceso de compilado es el de traducción del lenguaje de programación que estemos utilizando (por ejemplo C++) a código máquina que el ordenador puede ejecutar
Además, en este proceso se crea un archivo ejecutable que puede utilizarse en otros ordenadores
Hay lenguajes de programación que no utilizan un proceso de compilado sino un intérprete, que añade significado a las sentencias programadas
Python es un lenguaje interpretado
- Tipado dinámico
El tipado de un lenguaje de programación es la forma que tiene el lenguaje de gestionar las variables y sus tipos
Por lo general, en un lenguaje de programación se pueden crear variables de diferentes tipos (numero entero, número real, carácter, listas…)
Existen lenguajes en los que antes de poder utilizar una variable tenemos que definirla y asignarle un tipo concreto de variable
En un lenguaje no formal sería algo como: Quiero una variable entera que se llame Hermanos y Asigna a la variable casa el valor 3
Sin embargo en Python no es necesario realizar esta asignación, dado que es un lenguaje con tipado dinámico y, en general, no es necesario definir una variable para poder utilizarla
En Python escribiríamos directamente La variable hermanos tiene un valor de 2 y sería el interprete quien vería que queremos utilizar una variable que no existe, con el nombre Hermanos y asignarle el valor 2
- Multi paradigma
Existen varias formas de programar; con programación orientada a objetos como programación funcional
Python admite ambos tipos
- Multi plataforma
Existen intérpretes de Python para múltiples plataformas, tales como MS Windows, Mac OS o Linux
Tanto el intérprete de Python como su extensa biblioteca estándar están a libre disposición en forma de código fuente y archivo ejecutable para las principales plataformas desde el sitio web de Python
Detrás de Python existe una amplia comunidad que provee amplio soporte a la vez que desarrolla y actualiza constantemente una miriada de librerías centralizado en un repositorio llamado Pypi
Ademas existe un código de buenas prácticas de programación en Python así como una guía de estilo, a fin de que el código sea de fácil lectura y comprensión
Instalación y modos de uso de Python
Python puede instalarse en nuestro ordenador desde la página de Python (recomendado instalar la última versión de Python)
Sin embargo, es más cómodo realizar la instalación mediante una distribución como Anaconda, que nos descarga el intérprete, diferentes editores y los paquetes y librerías más utilizados
Para instalar esta distribución tendríamos que:
- Ir a la página de descargas de Anaconda y descargar el paquete que se ajusta a tu sistema operativo y versión de Python deseada
Se recomienda instalar la correspondiente a la versión más actual de Python
- Ejecutar el paquete y dejar que se instale completamente en el sistema
-
Tras la instalación sería recomendable actualizar los paquetes
Para ello abre un terminal y ejecuta:
Mostrará una lista de librerías que van a a ser actualizadas
Si estás conforme, acepta e iniciará la descarga y la instalación de las librerías
-
En el caso de querer instalar una librería concreta, en el terminal ejecutaremos:
Instalará la última versión de la librería presente en el repositorio de Anaconda que corresponda a nuestro sistema operativo y a nuestra versión de Python
En caso de que no esté presente en los repositorios, opcionalmente podemos instalar la librerías con pip
Para ello abre un terminal y ejecuta:
Para más información consultar la documentación de Anaconda
La forma más rápida de utilizar Python es mediante línea de comandos
Una vez tenemos un intérprete instalado en nuestro ordenador, abriríamos un terminal y escribiríamos
Esto abre una consola sobre la que podemos escribir y ejecutar código Python
Cada línea que ejecutásemos se realizaría la operación solicitada
Es una forma muy rápida para testear código pero es muy poco práctica, ya que perdemos la reutilización del código ejecutado
Es decir, si quisiésemos ejecutarlo de nuevo, tendríamos que escribir linea a linea el código otra vez
Lo más común es utilizar un editor como Spyder (se instala junto a Anaconda) o Jupyter notebooks, que es el que voy a utilizar yo para los ejemplos
Jupyter Notebook
Jupyter Notebook (anteriormente, IPython Notebook) es una aplicación web de código abierto que te permite crear y compartir documentos que contienen código en vivo, ecuaciones, visualizaciones y texto narrativo
Además, es una aplicación muy utilizada en el campo de la Ciencia de Datos (Data Science) para crear y compartir documentos que incluyen: limpieza y transformación de datos, simulación numérica, modelado estadístico, visualización de datos, aprendizaje automático y mucho más
Te permite editar y ejecutar documentos de notebook a través de cualquier navegador web de tu elección; y puede ejecutarse en un escritorio local que no requiere acceso a Internet o puede instalarse en un servidor remoto y acceder a través de Internet
También podemos ejecutar Jupyter Notebook sin ninguna instalación desde la página web del proyecto
O instalarlo usando pip, para ello abre un terminal y ejecuta:
Utilizar Jupyter Notebook
Una vez lo tengamos instalado, abriremos un terminal y ejecutaremos:
Esto imprimirá cierta información sobre el servidor de notebook en nuestro terminal, incluida la URL de la aplicación web (de forma predeterminada, http://localhost:8888)
En caso de necesitar conocer la ruta en la que tenemos instalado Jupyter, podemos ejecutar en el terminal:
En caso de necesitar conocer la versión de Python que tenemos instalado, podemos ejecutar en el terminal:
Antes de ejecutar este comando de una línea, se recomienda que verifiquemos que nuestro directorio de Anaconda PATH se haya agregado correctamente a las Variables de entorno, y si no es así, debemos ubicar nuestra ruta de directorio / archivo de Anaconda y agregarlo a las Variables de entorno, o si no podrías obtener un error:
jupyter no se reconoce como un comando interno o externo
Si el lanzamiento ha funcionado correctamente, se abrirá nuestro navegador por defecto con el Notebook abierto en el puerto 8888
Una vez ya dentro del Notebook, observaremos un botón llamado New que, al hacer clic, nos permite seleccionar un kernel de Python (las opciones dependen de lo que esté instalado en nuestro servidor local) del menú desplegable
Se recomienda seleccionar la última versión de Python que nos aparezca en el desplegable, a no ser que sea necesario usar otra por motivos de compatibilidad
Una vez seleccionado y aceptado, se nos abrirá nuestro primer cuaderno para escribir nuestros programas en Python
Nuestro primer script Python
Vamos a escribir un pequeño script de ejemplo para mostrar lo sencillo que es ejecutar un script Python desde Jupyter
Python tiene definido un sistema de almacenamiento y gestión de variables
En las variables podemos guardar información que queramos utilizar más adelante en el código con un nombre que nos sea fácil de recordar
En nuestro ejemplo, queremos calcular el área y el volumen de una esfera
Las ecuaciones que necesitamos son:
- A = 4\pi \cdot r^2 para el área
- V = \frac{4}{3}\pi \cdot r^3 para el volumen
En concreto, queremos calcular estos valores para una esfera de 7 de radio
Vamos a definir tres variables:
- r
Contiene el valor del radio, en este caso 7
- A
Contiene el valor del área calculada
- V
Contiene el valor del volumen calculado
¿Qué ventajas obtenemos definiendo variables?
Si cambiamos de idea y en vez de un radio 7 queremos que sea 6, tendríamos que cambiar el número de dos sitios (que en el caso de un programa en producción podrían ser cientos)
O queremos que sea el usuario quien indique el valor, de forma que no podemos saberlo a priori
Para escribirlo en Python usaremos una celda del cuaderno a la que le asignaremos en el menú desplegable (lo veremos a la izquierda del icono que parece un teclado) el valor Code
Una vez dentro de la celda, la usaremos como un editor de texto escribiendo:
Para ejecutarlo podemos usar el botón run o dejando pulsada la tecla de mayúsculas y después pulsando enter
El resultado de las variables permanecerá en memoria, pero nosotros no podremos verlo
Ahora vamos a usar la función print (similar a la función de C++) para poder ver el resultado de nuestro script Python
Para poder usar la constante Pi, se ha importado el módulo math con la sentencia import math y luego la hemos usado con math.pi
Como puede verse, para definir una variable escribimos el nombre con el que queremos bautizarla, el signo = y la expresión que queremos que sea asignada a esa variable
Comentarios en Python
Python soporta comentarios tipo Shell de Unix