viernes, 27 de junio de 2014

Comenzando con Python!

Hola a todos!

Esta será la primera entrada en la que veremos código, por lo que es importante, primero, tener todo lo que necesitamos para programar en Python.

Antes que nada: ¿Qué es Python?

Python (como lo pueden encontrar en Wikipedia) es un lenguaje :interpretado: (de alto nivel) que tiene como objetivo disminuir la complejidad del código, en base una sintaxis mas clara y un código más estético. 

En cristiano:

Si ya conoces algún otro lenguaje de programación como lo es C, C++, Java, etc.. (que no sea de Scripting) sabrás que hay que realizar un proceso previo a poder ejecutar las instrucciones del programa (compilar), mientras que en el caso de los lenguajes interpretados o de :Scripting: como Python, las líneas de código son :convertidas: y ejecutadas una a una conforma van siendo encontradas por el interprete. Además, Python tiene la filosofía de reducir la complejidad de escritura de código por medio de la utilización de :sangrías: (obligatorias) para definir jerarquías y de una sintaxis muy cercana al lenguaje natural (como hablamos normalmente).

¿Por qué Python es un buen lenguaje para comenzar a programar?

Al ser un lenguaje con una sintaxis clara y sencilla, además de ser interpretado, Python presenta una manera sencilla de presentar los diferentes conceptos de programación sin necesidad de entrar en detalles engorrosos (como en C) y complicados que desalientan a los nuevos en la materia. En mi experiencia, recomiendo ampliamente Python como un lenguaje introductorio para la programación y como una plataforma para desarrollar aplicaciones para usuarios finales.

Sin más, la última pregunta que surge es: ¿Qué necesito para programar en Python?

La respuesta, por obvia que parezca, es Python!! 

Antes que nada es necesario tener una versión de Python disponible en su computadora (otra de las ventajas de Python es que es multi-plataforma, funciona en OSX, Linux, Windows). Si usan un sistema basado en Linux y versiones recientes de OSX, muy probablemente tendrán instalada alguna versión por default de Python. En caso de tener Windows será necesario que bajen una versión del mismo ( es muy sencillo buscarlo en google y descargar cualquier versión disponible).

En caso de ser principiantes o que deseen seguir mi recomendación, bajen un IDE, que me gusta mucho, llamado Enthought Canopy. Este IDE ya cuenta con una versión de Python, la 2.7 me parece, y una interfaz muy amigable para empezar a programar. En esta pueden ejecutar comandos directamente en consola o escribir un :script: directamente en el editor para luego ejecutarlo. Es una manera muy sencilla de ir aprendiendo, si es que eres un nuevo en el tema. Además Canopy ya tiene muchas librerías pre-instaladas para computo científico y para otras aplicaciones, por lo que reduce los problemas para aquellos inexpertos en agregar paquetes o librerías al entorno de Python.

Una vez que tengamos nuestro entorno listo, ya estaremos preparados para escribir nuestro primer programa en Python!!!

(Ustedes deben de tener una vez instalado el Canopy una pantalla como la que se muestra en la siguiente imagen)


Una vez en esta pantalla seleccionaremos el editor y nos abrirá una nueva pantalla, como la siguiente:

La distribución de las ventanas puede cambiar (Ej. La ventana de comandos (der) puede estar abajo)
Una vez que nos encontremos en esta ventana ya estaremos para programar!!

En la imagen anterior, la parte izq muestra los directorios disponibles y los archivos recientes. En el lado derecho tenemos la consola, donde podemos ingresar nuevos comandos. Cada comando viene señalado en la consola con [#] donde # es un número en orden creciente. Sobre la parte superior, en el area de comandos, viene en que carpeta estamos trabajando y, por lo tanto, con que archivos podemos interactuar directamente. Por último, en la parte central se encuentra el editor, ahi podemos decidir si queremos crear un nuevo archivo o abrir uno existe, para ésta ocasión crearemos uno nuevo y comenzaremos a escribir un poco de Python!!

Antes de escribir nuestro primero programa me gustaría que escribieran algunas cosas en su consola, lado derecho en la imagen anterior, y observaran los resultados que aparecen. A partir de ahi ustedes empezaran a sacar conclusiones de cómo es que Python funciona.

Poner en consola:

In [1] 1+2

In [2] 2*2

In [3] 3**2

In [4] 2*'a'

In [5] x = 2

In [6] x

In [7] x = 2.0

In [8] x

In [9] x = 'a'

In [10] 2*x

(Al termino de cada sentencia, presionar enter para observar la salida)

Al termino de estas pequeñas pruebas ya estaremos listos para comenzar nuestro primer programa. Al observar cada una de estas salidas, empezaremos a darnos cuentas que es un poco diferente de los otros lenguajes que conocemos, sobre todo la definición de la operación : * : para cuando opera sobre un caracter!!! Eso en C tiraría un enorme error!! Así mismo, la declaración de la variable x nos hace pensar en que no necesito especificar el tipo de dato que recibirá para crearla y además que puedo asignarle otros tipos de datos sin problemas. Es entonces que comenzamos a entender la verdadera belleza con la que cuenta Python y la responsabilidad que se nos entrega como programadores. En la mayoría de los lenguajes hay cosas que están restringidas desde un comienzo, pero en Python se nos da un voto de confianza, desde el punto de vista de buenas prácticas, para que, a pesar de que se puedan realizar ciertas cosas :no del todo incorrectas:, respetemos las directrices de programación y  nos las utilicemos, o no al menos tan a menudo!!

Ahora sí, es el momento de sentir que haremos nuestro primer script en Python.

En el editor, escribiremos:

print 'Hola Pyensa!'

Una vez que escribamos eso podemos presionar cmd + r (OSX), cntrl + r (otros) o dar click en la flecha verde de la parte superior para correr nuestro código. 

Ventana del Editor

Salida del Programa en Consola

Con lo que tendremos nuestro primer script de Python funcionando!!

De aquí en adelante ustedes pueden ir explorando un poco más, por su cuenta, lo que les ofrece Python. En las próximas entradas estaremos cubriendo las principales diferencias con otros lenguajes de programación y bueno, para los que no conocen nada las introduciremos de igual manera.

Eso sería todo para nuestro primer post, por lo que los espero para la próxima!

~Saludos


No hay comentarios.:

Publicar un comentario