Clase 1 Python-Introducción

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 13

Introducción a la programación

Entendemos por ​programación​ la ​actividad de programar​; y por ​programar​, el decirle a una


computadora ─o, mejor dicho, cualquier dispositivo programable─ lo que tiene que hacer.
De modo que la programación es un tipo de comunicación, comunicación entre un hombre
(el programador) y una máquina (la que es programada). Y como todo tipo de comunicación,
precisa de un lenguaje que sea comprendido tanto por el emisor como por el receptor. A ese
lenguaje lo denominamos ​lenguaje de programación​. El mensaje codificado según las reglas
de un lenguaje de programación lo llamamos ​programa​ o ​aplicación​.

Existen muchos lenguajes de programación, esto es, como dijimos, medios de comunicación
entre un programador y una computadora. Cada uno de ellos se caracteriza por algo en
particular: en el proceso de “instruir” a una máquina para que ejecute las acciones que le
indicamos, algunos lenguajes son más óptimos o acordes que otros para tal o cual tarea. Así,
ciertos lenguajes están pensados para “hablarle” a un celular; otros, a una computadora de
escritorio; otros, a un microondas. Y algunos son más fáciles de aprender, del mismo modo
como decimos que el griego y el árabe son menos accesibles que el inglés. El inglés, no
obstante, es más acorde si nos queremos dedicar al comercio internacional; así como el
griego lo es para el estudio de los pensadores clásicos de la antigüedad.

Pero seamos un poco más precisos: no es cierto que las computadoras comprendan las
instrucciones que les comunicamos vía un lenguaje de programación. De hecho, solo están
diseñadas para entender un dialecto al que se denomina ​código máquina​. Pero escribir un
conjunto de instrucciones directamente en este código es simplemente imposible para un
hombre. Por ende, necesitaremos un “traductor” (que no es sino un programa) que convierta
nuestras instrucciones escritas según las reglas de un lenguaje de programación en
particular a código máquina.

Python​ es un lenguaje de programación. Pero también llamamos Python al programa que


traduce Python-el-lenguaje a código máquina para que pueda ser interpretado por una
computadora. De ahí que en la expresión “instalar Python” nos referimos a
Python-el-programa, mientras que “programar en Python” se refiere a Python-el-lenguaje.
En la jerga, para evitar dicha ambigüedad, a Python-el-programa también se lo denomina
intérprete​.

Python es un lenguaje que se caracteriza por tener una sintaxis sencilla (fácil de aprender
para legos en programación) y clara (elocuente y de lectura fluida). Por ello resulta una
herramienta ideal para iniciarse en esto de la programación. Pero independientemente del
lenguaje que usaremos en este curso, lo más importante es que aprenderemos conceptos
generales de la programación (aunque claro, con las particularidades de Python), que se
aplicarán igualmente para otros. Así como aprender un segundo idioma es más sencillo
habiendo dominado nuestra lengua materna, del mismo modo ocurre en el mundo de la
programación. Y no es de extrañar que una misma persona, con el tiempo, acabe versada en
varios lenguajes de programación; aunque por lo general uno termina tomando una decisión
según sus propios gustos y especializándose en alguno en particular.

Para finalizar este apartado, precisemos una clasificación que nos será útil para poder
avanzar. Ya dijimos que un programa o aplicación es un conjunto de instrucciones escritas
según las reglas de un lenguaje de programación. Si bien existen varios tipos de
aplicaciones, en este curso estaremos trabajando con los siguientes dos:

● Aplicaciones de consola
● Aplicaciones de escritorio

Por el momento basta con saber que en Python los programas son, por defecto, aplicaciones
de consola.

Estructura de un programa
Me permito usar la siguiente analogía (harto trillada): escribir un programa (​i.e.​ programar)
es como redactar una receta de cocina. La diferencia es que quien escribe es un
programador y quien “cocina”, una máquina. Las computadoras, a diferencia de los
cocineros, nunca se equivocan al interpretar una “receta”. Siempre hacen lo que le decimos,
al pie de la letra. Todos los problemas que surgen en la industria del software radican en
creer que le estamos indicando una actividad X a una máquina cuando, en realidad,
programamos una actividad Y. Esto es, cuando hay una disociación entre lo que le “decimos”
y lo que quisimos decir.

De esta primera definición se sigue que podemos escribir un programa tanto en un pizarrón
como en un programa pensado para esa tarea (al que llamamos ​editor de código)​ . Las
instrucciones de los programas tienen una disposición similar a la del español: se interpretan
de arriba a abajo y de izquierda a derecha. Aunque a veces podemos indicarle que queremos
que tal instrucción o conjunto de instrucciones se ejecute dos o más veces, o que en
ocasiones no se ejecute, o que se vuelva a la primera instrucción, entre otras cosas
similares. Este recorrido del código (entendemos ​código​ por ​conjuntos de instrucciones​) que
hace una máquina al interpretarlo se denomina ​flujo de un programa​.

Un conjunto de instrucciones con el objetivo de obtener un determinado comportamiento se


conoce como ​algoritmo​ (según el diccionario de la RAE: ​conjunto ordenado y finito de
operaciones que permite hallar la solución de un problema​). Por ejemplo, el proceso por el
cual se calculan las raíces de una ecuación de segundo grado constituye un algoritmo.
Si tuviésemos que describirlo, sería más o menos así:
1. Elevar ​b​ al cuadrado.
2. Multiplicar 4 por ​a​ y por ​c​.
3. Restar el resultado de (2) al resultado de (1).
4. Calcular la raíz cuadrada del resultado de (3).
5. Sumar el resultado de (4) a ​-b​.
6. Dividir el resultado de (5) por ​2a​.
7. Restar el resultado de (4) a ​-b​.
8. Dividir el resultado de (7) por ​2a​.

Si bien hemos omitido algunos pasos (por ejemplo, qué ocurre si el resultado del paso 3 es
negativo) la idea es ilustrar las distintas operaciones que conforman un algoritmo y el orden
en el que están dispuestas.

Preparación del entorno


Antes de empezar a programar debemos instalar las aplicaciones necesarias para esta tarea.
Lo principal para este curso es tener instalado Python (ya dijimos en el apartado anterior a
qué nos referimos con esto). Para ello vamos a dirigirnos a la ​página oficial del lenguaje
(python.org)​ y seguir los pasos que se muestran a continuación.

Al momento en que escribimos este material, la última versión estable de Python es la 3.7.0.
Como el lenguaje se actualiza con bastante frecuencia, es probable que actualmente en el
segundo recuadro aparezca una versión más reciente, así que puedes descargarla sin
problemas.

Una vez descargado el instalador, procedemos a ejecutarlo. Antes de iniciarlo, debemos


asegurarnos de seleccionar la opción ​Add Python 3.x to PATH​​:

Esto evitará problemas de configuración con el editor de código más adelante. Segundo,
presionaremos ​Customize installation​​ para seleccionar la ubicación en donde queremos
instalar Python. Luego presionamos ​Next​​ hasta que nos aparezca la siguiente pantalla:
Allí modificaremos la ruta señalada en la imagen para instalar Python en una ubicación
cómoda tal como​ ​C:\Python37​ ​(o bien el número que corresponda a la versión que hayas
instalado). Por último presionamos ​Install​​ y esperamos a que finalice.

Ahora bien, dijimos que podemos escribir código en el lugar que se nos ocurra, pero existen
algunos programas pensados específicamente para esta tarea que nos ayudarán bastante al
momento de programar. Se conocen como ​editores de código.​ A veces se los distingue de los
entornos de desarrollo integrado (IDE, por sus siglas en inglés): aplicaciones más completas
que, además de un editor de código, incluyen otras herramientas como sistemas para
trabajar en proyectos grupales con otros programadores.

El editor de código con el que trabajaremos en este curso es Geany, el cual vamos a
descargar desde ​la página oficial (geany.org)​. En este caso, la instalación no requiere
ninguna modificación.

Nuestro primer programa


Para crear un programa primero debemos escribir el código en nuestro editor ─Geany─ y
luego guardarlo como un archivo con extensión​ ​.py​. ​A estos ficheros se los denomina
archivos de código de fuente​. Como Geany permite escribir código para varios lenguajes de
programación, debemos indicarle sobre cuál queremos trabajar de la siguiente forma:
Esto es, presionando en la flecha que aparece a la derecha del botón ​Nuevo​​ y luego
seleccionando la opción ​main.py​​. Se abrirá un nuevo archivo con el nombre​ ​sin título.py
con varias líneas de código.

Antes de continuar es importante cambiar una configuración de Geany yendo al menú


Documento​​ > ​Tipo de sangría​​ y seleccionar la opción ​Espacios​​.

Hecho esto, como queremos empezar de cero, vamos a borrar todo el contenido y a guardar
el archivo en el escritorio como​ ​hola.py​. ​Una vez hecho esto, escribiremos lo siguiente:

#!/usr/bin/env python
# -*- coding: utf-8 -*-

print("Hola mundo")

Por último, presionamos el botón ​Ejecutar​​ o bien la tecla F5 y deberemos ver lo siguiente:
¡Excelente! Hemos creado nuestro primer programa en Python. Lo que estamos viendo en
pantalla se llama consola o terminal, puesto que dijimos que, por defecto, los programas en
Python eran aplicaciones de consola.

Las primeras dos líneas que escribimos no nos interesan por el momento, simplemente basta
con saber que todo programa de Python debe comenzar con éstas. La tercera:

print("Hola mundo")

le indica a Python que debe mostrar (“imprimir”, ​print)​ en consola el texto que indicamos
entre paréntesis y entre comillas dobles. Intenta cambiando el mensaje para que el
programa imprima otros textos. El resto del texto de la consola que vemos debajo de “Hola
mundo” es información que agrega automáticamente Geany.

Todos los programas ─independientemente del lenguaje en los que estén escritos─ se
cierran automáticamente cuando ya no hay más código por ejecutarse. En el caso de Python,
las instrucciones (que por lo general habrá una por línea) son leídas y ejecutadas por el
intérprete de arriba hacia abajo y de izquierda a derecha. Cuando se ejecuta la última línea
de código, el programa termina.

Podemos observar este comportamiento claramente al hacer doble clic sobre nuestro archivo
hola.py​ ​(en lugar de ejecutarlo desde Geany). Veremos que el programa se ejecuta y cierra
casi instantáneamente. Geany y otros editores de código evitan cerrar la consola una vez
terminado el programa, de modo que podemos ver todo lo que haya impreso en pantalla (vía
la instrucción​ ​print​) ​incluso una vez finalizado.

La terminal o el símbolo del sistema


Hasta el momento sabemos que existen dos formas de ejecutar un ​script​ (esto es, un
conjunto de instrucciones guardadas en un archivo con extensión​ ​.py​) de Python:
presionando F5 desde Geany o haciendo doble clic sobre el archivo, y vimos qué diferenciaba
a una de otra.

La ​terminal,​ ​línea de comandos​ o ​símbolo del sistema​ (este es el nombre que recibe en
sistemas Microsoft Windows; los usaremos todos indistintamente) es una aplicación de
consola integrada al sistema operativo que permite ejecutar determinadas tareas a través de
comandos o bien invocar otros programas de consola. Habida cuenta de esto último,
entonces, con la terminal tenemos un tercer método para ejecutar ​scripts​ de Python.

Para abrir la terminal en Windows vamos a buscar el programa llamado ​Símbolo del sistema​,
o bien presionar las teclas​ ​Windows​ ​+​ ​R​, escribir “cmd” (sin comillas) y presionar Enter.
Veremos algo similar a lo siguiente:

La terminal está ahora expectante a que ingresemos algún comando o invoquemos una
aplicación de consola. Estas operaciones se realizan siempre desde una ubicación en
particular del sistema de archivos. Por ejemplo, en la imagen, se muestra que la línea de
comandos está ubicada en la ruta​ ​C:\Users\Pc Usuario​. ​Para cambiar nuestra ubicación al
escritorio vamos a usar el comando​ ​cd​ ​seguido de la ruta a la que nos queremos mover. Para
ello escribimos​ ​cd Desktop​ ​─esto es, cambiar el directorio (​ch
​ ange d
​ ​irectory​) actual a la
carpeta “Desktop” (el escritorio)─ y presionamos Enter.

Ahora que estamos posicionados en el escritorio, ejecutemos nuestro ​script​ de Python


escribiendo​ ​python hola.py​.
Como verás, nuestro programa se ejecutó correctamente (imprimió el mensaje en la
consola) pero la terminal sigue abierta permitiéndonos correr otros programas o comandos.

Cuando queremos movernos a una ruta que contiene espacios, debemos usar las comillas.
Por ejemplo:

cd “C:\Archivos de programa\Geany”

Si bien en este curso rara vez estaremos corriendo nuestros archivos de código de fuente
desde la línea de comandos (lo haremos, más bien, siempre desde Geany), es importante
tener un conocimiento básico de ella tanto para Python como para cualquier otro lenguaje de
programación.

Expresiones 
Avancemos un poco más con el diseño del código. Todos los lenguajes de programación
tienen la capacidad de ejecutar operaciones matemáticas simples (suma, resta,
multiplicación, división); es decir, incorporan una suerte de calculadora virtual que podemos
usar en nuestros programas para hacer este tipo de operaciones. La sintaxis (por ​sintaxis
entendemos el orden y la relación de los términos de un lenguaje necesarios para que una
instrucción sea comprendida) para realizar una suma en Python es similar a la que usamos
en matemática para expresar dicha operación.

7 + 5

Esto que acabamos de escribir es un código de Python perfectamente válido al igual que lo
era​ ​print("Hola mundo")​. De hecho, modifiquemos nuestro programa hola.py para que
ahora contenga el siguiente código (recuerda que debemos mantener siempre las primeras
dos líneas que mencionamos en el apartado “Nuestro primer programa”):
7 + 5
print("Hola mundo")

Al ejecutarse, este código realiza dos operaciones en el orden en que las dispusimos:
primero ejecuta la suma​ ​7 + 5​ ​y luego imprime en pantalla el mensaje “Hola mundo”. ¡No
esperes ver el resultado de la suma en pantalla! No, Python no hace nada que no le hayamos
indicado; y, en efecto, simplemente le hemos dicho “resuelve 7 + 5” pero no hicimos
mención alguna sobre qué debe hacer con ese resultado. Vayamos un poco más allá,
entonces, y digámosle que lo imprima en la pantalla:

print(7 + 5)
print("Hola mundo")

Ahora sí, al ejecutar este código veremos en pantalla:

12
Hola mundo

Todo lo que pongamos dentro de los paréntesis en una instrucción​ ​print​ ​será enviado a la
consola. Ahora bien, ¿por qué utilizamos comillas en el segundo caso y no en el primero? Por
el momento basta con saber que las comillas permiten que un conjunto de caracteres sea
interpretado de forma literal y no como código de Python.

Teniendo esto en cuenta, el siguiente código:

print("7 + 5")
print("Hola mundo")

imprime:

7+5
Hola mundo

En este caso, ​"7 + 5"​ es interpretado como un texto en lugar de una operación que Python
deba ejecutar, puesto que está encerrado entre comillas. Precisaremos un poco más estas
cuestiones en la próxima clase.

Volviendo a nuestro primer ejemplo, del código​ ​7 + 5​ ​decimos que es una ​expresión.​ Una
expresión es un fragmento de código que ​retorna​ un resultado. Por “retornar” no
entendemos más que lo siguiente: el lenguaje reemplazará ese fragmento de código por su
resultado.
Así, en todas las partes del código en donde aparezca​ ​7 + 5​, por cuanto se trata de una
expresión, el lenguaje lo reemplazará por ​12​. El código:

print(7 + 5)

es similar a:

print(12)

(Nótese que el término “reemplazar” es usado aquí con fines didácticos para comprender el
concepto de expresión; en realidad, el proceso de evaluación de todas las expresiones que
aparecen en un código es un tanto más complejo).

Variables
Ahora que sabemos lo que es una expresión, el concepto que aquí nos ocupa se torna más
sencillo: una ​variable​ es el nombre que se le otorga a una expresión. La sintaxis para crear
una variable es la siguiente:

variable = expresión

Donde ​variable​ ​es un nombre cualquiera (escrito, por convención, siempre en minúscula) y
expresión​ ​otra expresión cualquiera que queramos nombrar. Por ejemplo:

a = 7 + 5

Luego de la creación de una variable (cuya operación se denomina ​definición;​ la definición de


una variable no es una expresión, pues no retorna ningún resultado, sino una ​sentencia​),
podemos usarla tantas veces como consideremos necesario en todo código subsiguiente.

a = 7 + 5
print(a)

Incluso para crear otras expresiones:

a = 7 + 5
print(a + 10)

Como también otras variables:

a = 7 + 5
b = a + 10
print(b)

Otros ejemplos:

a = 12
saludo = "Hola mundo"
print(a)
print(saludo)

Las variables son en sí mismas expresiones, por lo que a ellas también se le aplica lo que
dijimos respecto de estas últimas: siguiendo el ejemplo, Python reemplazará ​a​ ​por ​12​ ​en
toda ocurrencia de ​a​ y​ ​saludo​ ​por ​"Hola mundo"​ en toda ocurrencia de​ ​saludo​.

La consola interactiva
La consola interactiva, al igual que Geany, nos permite escribir código de Python pero sin la
necesidad de guardarlo en un archivo ​.py​. En cambio, el código se ejecuta instantáneamente
a medida que lo vamos escribiendo.

Para abrir la consola interactiva debemos ejecutar el programa llamado ​Python (command
line)​​, o bien presionar las teclas ​Windows​ ​+​ ​R​ y escribir “python” (sin comillas).

Los caracteres “>>>” nos indican que ingresemos un código de Python. Ejecutemos, por
ejemplo, el ya aprendido ​print("Hola mundo")​ ​escribiéndolo en la consola y presionando
Enter. Veremos que el resultado es el siguiente:

>>> print("Hola mundo")


Hola mundo
Como verás, cada línea se ejecuta inmediatamente luego de que es escrita. Cuando
ingresamos una expresión, el resultado es mostrado en pantalla, independientemente de si
hemos usado la instrucción ​print​.

>>> 7 + 5
12

De este modo, la consola interactiva resulta ideal para hacer pruebas de pequeños códigos y,
en caso de ser expresiones, ver sus resultados. También se permite crear variables, como
vimos en el apartado anterior, y conocer sus valores:

>>> a = 7 + 5
>>> b = a + 10
>>> a
12
>>> b
22

A partir de ahora, siempre que veas los caracteres “>>>”, estaremos queriendo decir que el
código debe ejecutarse en la consola interactiva.

Conclusión
En prácticamente todo programa de Python, por más pequeño que sea, estaremos usando
variables y expresiones. Es importante tener bien en claro sus conceptos y cómo funcionan
para poder seguir avanzando con el lenguaje. Recuerda que una expresión es una porción de
código de Python que retorna algún valor determinado (por ejemplo, ​7 + 5​, que retorna ​12​),
y que las variables son nombres que potencialmente le damos a esas expresiones (​e.g.,​ ​a =
7 + 5​).

También podría gustarte