Tema 1: Introducción a la programación y Python

Compartir en:
Haz clic aquí para ver la videoclase

Contenidos

1 Programar

Se puede decir que programar es como contar una historia. Aparte de conocer el lenguaje en el que uno se quiere expresar (en este caso Python), hay una técnica, una forma convencional de estructurar nuestra historia, pero también un estilo personal que va mejorando con la práctica y que, en gran medida, es un proceso creativo que ocurre con más facilidad en unos momentos que en otros. A pesar de lo creativo del proceso, programar no es más que poner solución a un problema del mundo, dar una solución técnica a una necesidad que surge en un momento determinado.

Hay que señalar también que aprender a programar no es un viaje lineal. No debemos tener miedo de volver atrás, revisitar y volver a estudiar conceptos ya aprendidos. Normalmente, aun en los estadios más incipientes, la programación integra prácticas de niveles muy diferentes, por lo que es habitual que lo que parece de una forma en un primer momento, resulte ser de otra cuando nuestro conocimiento avanza. Es normal si dentro de unos meses descubres que un concepto que aprendiste el primer día no era lo que pensabas. Por ello, no dudes en volver atrás cuando lo consideres necesario.


Por último, no quiero perder la ocasión de decirte que, como ocurre con las lenguas naturales, cuando aprendes un lenguaje de programación, estás interiorizando una gramática y un léxico con el que puedes reencontrarte al aprender otros lenguajes. Este es el comienzo de una larga carrera.

2 Python

En primer lugar, debemos aclarar que Python no es un programa de ordenador o una aplicación como las que estamos acostumbrados a manejar. Python es un lenguaje de programación; es decir, una forma de contar una historia, siguiendo la metáfora del apartado 1. Esto quiere decir que, aunque digamos que vamos a instalar Python en nuestro ordenador, el producto de esa instalación no será un programa con una interfaz gráfica con colores y botones sobre la que movernos con el ratón. Únicamente se instalarán una serie de utilidades que nos permitirán utilizar localmente este lenguaje.


Se dice, además, que Python es un intérprete: una especie de traductor. Python nos ofrece un lenguaje para comunicarnos con el sistema operativo. Nosotros le hablaremos en su lenguaje: le daremos una serie de órdenes y él, como intérprete, se ocupará de traducirlas al lenguaje del ordenador (binario). De esta forma las órdenes que nosotros pondremos por escrito se convertirán en acciones.

2.1 Las terminales de Python y del sistema

Al instalar Python en nuestro ordenador, el resultado no es el mismo que al instalar un programa de escritorio. Si nuestro sistema operativo (SO) es Windows, después de la instalación, tendremos a nuestra disposición un programa llamado python en el menú de aplicaciones. Si lo abrimos, veremos que se trata de una terminal. No es más que el intérprete al que dar instrucciones. Desde cualquier SO (incluido Windows), podemos acceder a Python desde las terminales nativas (CMD o PowerShell en Windows y Terminal en Linux y Mac) tecleando el comando python3. Al hacerlo, veremos cómo la interfaz cambia: se muestra la bienvenida a Python y ahora la línea de comandos tiene tres ángulos en señal de que está esperando nuestras órdenes.

1Python 3.5.1 (v3.5.1:37a07cee5969, Dec6 2015,01:54:25)
2[MSC v.1900 64bit (AMD64)] on win32
3Type "help", "copyright", "credits" or "license" for more information.
4>>>


2.1 La terminal de Python

Probemos el comando print que únicamente imprime cadenas de texto en la terminal. Vamos a observar cómo la terminal se comunica con nostros. El bloque 1 es una orden incorrecta porque print está mal escrito. Al ejecutarlo, veremos cómo la terminal nos indica que hay un error en el nombre (NameError) y nos indica que esa función no existe.

1primt('Bienvenido al curso')

Si introducimos la orden correctamente, todo va bien y la forma que tiene Python de comunicárnoslo es decirnos lo que le hemos pedido: 'Bienvenido al curso'.

1print('Bienvenido al curso')

Siempre podemos pedirle ayuda a Python ejecutando el comando help()

1help()


Si bien es posible, la utilización de la terminal de Python no es habitual en programación. Normalmente los programas se componen de bastantes órdenes. Un programa es una secuencia ordenada, coherente y con un objetivo definido de órdenes. Cuando un programa tiene un tamaño más reducido, es habitual referirse a él como script. Una terminal solo permite escribir una línea. Resulta muy incómodo escribir una secuencia de código, aun cuando es breve, en una sola línea, por lo que lo normal es crear un archivo de texto con todas las órdenes y, una vez esté listo, pasárselo a Python para que lo lea y lo ejecute. Los archivos de Python tienen la extensión .py y, para ejecutarlos, solo tenemos que abrir una terminal en la carpeta del ordenador donde tengamos el archivo, escribir python3 para indicarle al ordenador que ese es el programa que queremos utilizar y, a continuación, el nombre del archivo:

1$ python3 script.py
2This is my script


Aunque no sea el objetivo del curso, es fundamental que adquiramos cierta comprensión de la terminal para poder entender los ejemplos que encontraremos cuando busquemos información. Cuando se trata de un ejemplo de terminal, normalmente se distinguen dos tipos de línea: las de entrada y las de salida. Las primeras son las que nosotros introducimos y se marcan con el signo del dólar ($) al comienzo. Si ejecutas el comando que se indica en este tipo de líneas en tu ordenador, no debes incluir el símbolo $ ni el espacio a continuación del mismo. Las líneas de salida muestran los resultados de los comandos ejecutados. En el ejemplo anterior, se ha ejecutado el script script.py y el resultado ha sido que se ha imprimido en pantalla This is my script. Es habitual que los programas tengan salidas de texto en pantalla (console output en inglés) a modo de explicación de lo que está ocurriendo en la ejecución del programa.

2.2 Hablando con Python

Aunque la terminal no se suele utilizar per se, siempre está presente de manera indirecta. Algo muy importante de la programación es aprender a entenderse con la terminal. Como veíamos, cuando activamos el entorno de Python, la línea de comandos nos muestra tres ángulos en señal de que escucha nuestras órdenes. Cuando se las damos, sea directamente o a través de scripts, la terminal nos responderá. Si todo va bien, nos responderá como le hayamos ordenado hacerlo en nuestro código: los resultados serán los que hayamos programado. De igual modo, si ocurre algún error, la terminal nos dirá, a su manera, qué ha ocurrido. Solo debemos aprender a entender su lenguaje y, sobre todo, a anticiparnos a los errores comunes y prevenirlos.


3 Depuración

La depuración del código es un proceso fundamental de la programación que consiste, no solo en localizar errores en el código y solventarlos, sino también anticiparse a posibles fallos en la ejecución del código y ofrecer una solución. En este último caso, estamos hablando de errores que no son necesariamente causa de una mala praxis por parte del autor del código. Pueden deberse a factores ajenos. Este tipo de errores puede aflorar en el medio de la ejecución y es fundamental anticiparse y contemplarlos en nuestro código. A lo largo del curso veremos algunas formas de depuración.