Lo Básico para Empezar con Python – Hola Mundo

En este momento tengo propuesto aprender el lenguaje de programación Python con un compañero y me dije por que no, por que simplemente no sigo con los que ya sé, pero pensándolo un poco mas allá dije, este es el lenguaje que me podría dar la entrada a temas de Machine Learning, entonces por eso lo decidí, y lo primero que se me viene a la cabeza como programador es: ¿Que es lo que necesito saber para poder programar en Python?, pues en mi opinión, hay una serie de cosas muy puntuales, con las cuales podemos iniciar para poder tener un inicio rápido y avanzar de ahí en adelanta hasta donde nuestra curiosidad lo indique.

¿Que es Python?

Python es un lenguaje de programación similar a Perl, pero tiene una sintaxis mas limpia es decir que es un lenguaje que nos permite desarrollar varias habilidades básicas cuando estamos aprendiendo a programar, y nos obliga a tener buenos hábitos como el uso correcto de la identación del código, y su sintaxis sencilla, hace que parezca prácticamente seudocódigo escrito en inglés.

Unas de las características mas importantes de Python son las siguientes: es un lenguaje interpretado, esto quiere decir que no es necesario hacer una compilación para poder realizar su ejecución, a diferencia de C o C++, también es un lenguaje que posee un tipado dinámico, esto quiere decir que no es necesario definir los tipos de datos utilizados en las variables, ya que el lenguaje infiere que tipo de dato necesitamos para nuestras variables (No necesariamente bueno al momento de aprender de cero un lenguaje, pero da un poco de libertad), pero que tenga un tipado dinámico, no quiere decir que podamos hacer lo que se nos venga en gana con las variables, ya que tiene un tipado muy fuerte, esto quiere decir que aunque el lenguaje infiera lo que le asignemos, no podemos ir combinando variables a lo maldita sea, por que el lenguaje no nos lo va a permitir, como por ejemplo combinar un texto con un numero, es muy restrictivo en este sentido. Otra gran ventaja, que tiene Python es que es multiplataforma, podemos usar nuestro código en cuanto equipo queramos, y la característica mas importante para mi, es que es un lenguaje orientado a objetos, esto nos va a permitir tratar con conceptos como herencia o polimorfismo (si no sabes que es googlea por que acá no voy a explicar eso).

Instalación

El Interprete

Lo básico que necesitaremos es el interprete de Python, estos interpretes vienen definidos según la implementación que necesitemos, las implementaciones ofrecidas por Python según su página web son:

  • IronPython (Python running on .NET)
  • Jython (Python running on the Java Virtual Machine)
  • PyPy (A fast python implementation with a JIT compiler)
  • Stackless Python (Branch of CPython supporting microthreads)
  • MicroPython (Python running on micro controllers)

Nosotros vamos a usar Stackless Python, es la que se descarga por defecto en la página de Python, y va a ser necesario descargarla solo si tienes Windows, por que en MacOS y Linux, ya viene preinstalado. En este caso simplemente vamos a abrir la página de descarga de Python, entrando a la url http://www.python.org/download, y como cuaquier instalador sin publicidad vamos a dar next, next y next hasta finalizar.

En caso de que no estar 100% seguro de tener instalado python, simplemente abrimos la terminal, y escribimos el comando python, esto nos va a arrojar un mensaje con la información de la versión de python en nuestra maquina, como este:

wmachuca @ wmachucamac in ~ [9:22:05]
python
Python 2.7.10 (default, Oct  6 2017, 22:29:07)
[GCC 4.2.1 Compatible Apple LLVM 9.0.0 (clang-900.0.31)] on darwin
Type “help”, “copyright”, “credits” or “license” for more information.

En caso tal que estes en Windows y no hallas hecho la instalación, aparecerá algo como lo siguiente:

C:\Users\Usuario>python
‘python’ is not recognized as an internal or external command, operable program or batch file

De lo contrario igual que los otros SO, simplemente aparecerá la información con la versión de Python.

El IDE

Finalmente, es necesario tener un IDE de desarrollo donde podamos trabajar con Python, a menos que quieras programar en la consola, pero si buscamos en internet la mayoria de personas o cursos o lo que sea, nos dicen por todo lado, descarguen Aptana Studio, pero para este caso vamos a configurar Visual Studio Code, solo por que a mi me gusta y es mi tutorial ;). Luego de descargarlo de la página https://code.visualstudio.com/Download, procedemos a instalar el paquete de extensiones básicas para Python, entonces nos vamos a la pesataña de extensiones, y buscamos “Python Extension Pack”, que es un paquete de extensiones de desarrollo que incluye, intellisense para python, linting y hasta una extension para Data Science con Jupyter para Python (Eso es cosas de Machine Learning que mas adelante veremos en otra publicación).

Y Walá!!, tenemos un entorno de desarrollo configurado para trabajar con Python, el interprete, y el IDE, fácil.

Mis primeros pasos en Python

Una de las primeras cosas que hacemos cuando comenzamos con un lenguaje de programación es un “Hola Mundo”, una simple instruccion que nos deja ver que tenemos un mundo de posibilidades por delante con cualquier lenguaje, y lo primero que se nos viene a la cabeza es ¿Donde escibo mi código?, ¿Como lo escribo?, ¿Donde lo ejecuto? Y. ¿Ya puedo hackear algo con lo que he aprendido?, pues con este “Hola Mundo”, vamos a responder tres de esas cuatro preguntas, la ultima depende de que tan curioso seas.

Para este “Hola Mundo”, vamos a usar una sola instrucción del lenguaje la cual es la instrucción print, esta nos permite emitir un mensaje en pantalla. Y ahora si las preguntas:

¿Donde escribo mi código?

Hay dos lugares donde podemos escribir codigo de lenguaje Python, muchos lenguajes interpretados poseen un interprete interactivo del lenguaje, es decir directo en la consola, para nuestro caso, simplemente abrimos una consola y escribimos pyton, este comando (si ya tenemos instalado python, si no echate unos parrafos para atrás), nos abrirá el editor, y ¿como sabemos que es el editor?, pues simple hay tres simbolos mayor que seguidos “>>>” con el cursos titilando y gritando “aqui!”.

wmachuca @ wmachucamac in ~ [9:22:05]
python
Python 2.7.10 (default, Oct  6 2017, 22:29:07)
[GCC 4.2.1 Compatible Apple LLVM 9.0.0 (clang-900.0.31)] on darwin
Type “help”, “copyright”, “credits” or “license” for more information.
>>>

El otro lugar es un archivo de python, este archivo es un archivo con extensión “.py” que puede estar guardado en cualquier carpeta, este archivo va a tener los comandos  que necesitemos ejecutar de nuestro programa en python, mas adelante miramos como lo ejecutamos, pero en resumen es un archivo de texto con las instrucciones en python, guardado con el nombre que se nos venga en gana (si son programas grandes hay que ser organizados) y con la extensión “.py”

¿Como lo escribo?

Python tiene un sistema de identación sencillo pero estrico, para los que no saben la identación simplemente es el espacio que hay entre la columna 0 y el primer caracter de la fila, por ejemplo puede tener un identado de un espacio (de la barra espaciadora) o una tabulación (de la tecla tab :V), en Python se puede manejar espacios o tabulaciones sin generar error, pero es mejor practica y de más facil lectura usar tabulaciones, ya que da mas espacio entre columnas (4 espacios). El identdo usa una jerarquía simple, que quiere decir que si por ejemplo tenemos un if anidado, el primer nivel no lleva tabulacion, y todo lo qeu vaya adentro lleva una tabulación, y va aumentando las tabulaciones dependiendo la profundidad del anidado, y tampoco lleva ni llaves (bueno las funciones lleva llaves pero ya sabrán a que me refiero), ni punto y coma ni nada de simbologia rara, simplemente se usan los dos puntos por ejemplo para definir donde empieza la condicion if, por ejemplo:

Todo se basa en el buen manejo de las tabulaciones, si aprendemos a manejar esto, pues ya practicamente tenemos dominada las buenas practicas de identción de codigo, y nos enseñamos a escribir codigo legible, y no un spaguetti que nadie va a comprender.

¿Donde lo ejecuto?

Esto ya practicamente debe estar resuelto, por qeu de hecho lo dije unos parrafos atrás, pero voy a repetirlo de buena gente, si estamos en el interprete interactivo (consola), y no tenemos un archivo “.py”, pues simplemente escribimos el codigo luego de las tres mayor que “>>>”, y presionamos enter, esto ejecuta nuestro código y vuelve y nos habilita las “>>>” para seguir escribiendo codigo como hackers a lo maltida sea asi:

wmachuca @ wmachucamac in ~ [9:22:05]
python
Python 2.7.10 (default, Oct  6 2017, 22:29:07)
[GCC 4.2.1 Compatible Apple LLVM 9.0.0 (clang-900.0.31)] on darwin
Type “help”, “copyright”, “credits” or “license” for more information.
>>> print “Hola Mundo, I Am Wil”
Hola Mundo I Am Wil
>>>

Pero si estamos más humanizados y usamos archivos para organizar nuestro código, entonces vamos a crear un archivo que se llame “holamundo.py”, colocamos la instruccion que escribimos en la terminal y en varias lineas de codigo y simplemente nos posicionamos en la terminal en la carpeta donde tenemos nuestro archivo “.py” (usando el comando “cd” en la terminal), y escribimos esto en la terminal ‘python holamundo.py’ y plop!, se ejecuta nuestro código! De la siguiente manera:

wmachuca @ wmachucamac in ~ [10:54:23]
cd Python/1.HolaMundo
wmachuca @ wmachucamac in ~/Python/1.HolaMundo [10:54:26]
python holamundo.py
Hola Mundo
I Am Wil

Y yá, esto es lo más sencillo que se debe tener en cuenta para poder ejecutar código python, no hay que dejar de lado el tema de aprender a identar, por que si no sabes identar, estas jodido con Python, puede que sirva en otros lenguajes pero si acá no se utiliza, puedes ir a que te piquen caña.

Como esto se esta alargando, voy a cargar otra publicacion sobre como usar las validaciones, ciclos y funciones en Python, por el momento, respondo por los comentarios. Y como ya saben, I Am Wil y esta es la web de un programador ;).

Puedes compartirlo en:
Share on Facebook
Facebook
Tweet about this on Twitter
Twitter
Share on LinkedIn
Linkedin
Share on Google+
Google+