Python aplicado a la Electricidad y Electrónica (9)

En este artículo de la serie dedicada a la programación en Python, veremos cómo tomar decisiones a partir de una condición y cómo lo implementamos en nuestro código.

Los programas que hicimos hasta ahora han sido muy simples y constaban de unas cuentas instrucciones que se ejecutan una después de la otra. No hay nada que modifique ese orden y se repite siempre igual. Eso es poco frecuente en programas mas complejos. Lo mas habitual es que el flujo del programa, el orden en que se ejecutan las instrucciones sea más dinámico y cambie según se cumplan o no ciertas condiciones. Volvamos al juego que citábamos como ejemplo al principio: si capturamos algún elemento de valor o destruimos algo, nuestro puntaje se incrementa, si nos disparan, por el contrario, el puntaje disminuye, si la cantidad de vidas es cero, perdemos, y así con infinidad de situaciones diferentes.

En el párrafo anterior se repite mucho la palabra “si” porque en español nos sirve para expresar una acción que está sujeta a una condición. Por ejemplo la frase:

Si hace calor entonces iré a la pileta

Expresa que haremos algo (ir a la pileta) si se cumple una condición (que haga calor).

En Python tenemos una instrucción que nos permite ejecutar una instrucción (o varias) si se cumple una condición. Es if (que es “si” en idioma inglés). Un posible uso es en la siguiente forma:

La condición debe ser una expresión booleana, es decir que puede ser sólo verdadera o falsa. Los paréntesis alrededor de la condición no son obligatorios, pero se recomienda utilizarlos para mejorar la claridad del código. Luego de la condición se debe escribir “:” (dos puntos) y las instrucciones que se van a ejecutar cuando la condición sea verdadera deben escribirse indentadas, esto es desplazadas al menos cuatro lugares a la derecha (o la separación de la tecla “TAB”). El fin de la indentación, cuando se vuelve a escribir sin espacios o “TAB” marca el final de las instrucciones condicionadas.

Veamos este ejemplo:

En la primer línea nos hace introducir un nombre que se guarda en la variable “nombre”. Luego hay una instrucción if, una condición: si el nombre es igual a “Juan” realiza las dos instrucciones que están después de los dos puntos “:” e indentadas, es decir mostrar “Felicitaciones!” y “Ganaste!”. La última instrucción muestra “Hola ” y concatenado el contenido de “nombre”, pero como no está indentada como las de arriba, no está sujeta a la condición, y por tanto funciona siempre, cualquiera sea el nombre que introduzcamos:

En el ejemplo anterior, para comprobar si el nombre era “Juan” usamos el símbolo “==” que significa “es igual a”. Veamos los operadores de comparación que podemos usar en una condición:

CondiciónOperador
Igual a…==
Distinto de…!=
Mayor que…>
Menor que…<
Mayor o igual que…>=
Menor o igual que…<=
Operadores de comparación

Los programas que escribimos antes de la Ley de Ohm funcionaban correctamente pero tenían un pequeño detalle: al calcular corriente y resistencia usamos la operación de división. Como saben, la división por cero no está definida, así que si nuestro programa intenta dividir por cero, el programa se detiene con un error. Por ejemplo, usando el programa que calcula la corriente, introduciremos “0” para el valor de la resistencia:

Error al intentar dividir por cero

Ahora que sabemos como escribir condiciones, evitaremos este error con una instrucción if:

La condición de la instrucción if es “que R sea distinto de cero” si se cumple, calcula la corriente y si es cero, no hace nada, evitando el error.

En el próximo artículo seguiremos profundizando en el uso de las condiciones en Python.

Deja un comentario

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

A %d blogueros les gusta esto: