Podemos hacer que nuestro programa tome decisiones. Para ello utilizamos la instrucciones if:
a = int(input())
b = int(input())
if a == b:
print("son iguales")
Observa que if va acompañado de a == b: Esto es porque if necesita saber qué criterio utilizar para tomar una decisión, en este caso el criterio es a == b, es decir, “si a tiene el mismo valor que b”, entonces hará lo que hay dentro del if (debajo alineado a la derecha).
Utilizamos == para mirar si dos valores son iguales, y no =, porque = tiene un significado distinto. Recordémoslo:
a = b # Asigna a la variable a el valor que haya en la variable b
a == b # Mira si el valor de a es el mismo que el valor de b, pero no modifica ningún valor
Sabemos cómo mirar si dos variables tienen el mismo valor (con ==), pero hay más criterios a nuestro alcance:
a == b # Mira si a y b son iguales
a != b # Mira si a y b son diferentes
a > b # Mira si a es mayor que b
a < b # Mira si a es más pequeño que b
a > = b # Mira si a es mayor o igual que b
a <= b # Mira si a es más pequeño que b
Vemos algunos ejemplos:
3 == 4 # No
3 != 4 # Sí
3 < 4 # Sí
3 > 4 # No
3 <= 4 # Sí
3 >= 4 # No
7 == 7 # Sí
7 != 7 # No
7 < 7 # No
7 > 7 # No
7 <= 7 # Sí
7 >= 7 # Sí
4 < 3 # No
4 > 3 # Sí
4 <= 3 # No
4 >= 3 # Sí
Vemos un ejemplo más completo:
a = int(input())
b = int(input())
if a == b:
print(a, "y", b, "son iguales")
if a != b:
print(a, "y", b, "no son iguales, y además:")
if a > b:
print(a, "es mayor que", b)
if a < b:
print(a, "es mayor que", b)
¿Qué ocurre si queremos que si se cumple una condición pase una cosa y si no se cumple pase otra? No hace falta escribir dos if, podemos utilizar la instrucción else que activará su código cuando no se cumpla la condición a la que va asociada. Por ejemplo:
edad = int(input())
if a >= 18:
print("Eres mayor de edad")
else:
print("No eres mayor de edad")
Podemos encontrarnos en una circunstancia en la que, dada una pregunta, queremos ofrecer varias alternativas. Podemos utilizar elif para añadir posibilidades a la instrucción if original. Por ejemplo:
print("Dime tu color favorito:")
color = input()
if color == "rojo":
print(color, "como un coche de bomberos")
elif color == "amarillo":
print(color, "como un buzón de correos")
elif color == "azul":
print(color, "como el mar")
elif color == "negro":
print(color, "como la noche")
elif color == "naranja":
print(color, "como una naranja")
elif color == "verde":
print(color, "como la hierba")
else:
print("No conozco este color")
Es importante destacar que else se activará cuando ninguna de las condiciones anteriores se cumpla (entre el if anterior y el else).
Variables booleanas
Podemos guardar el resultado de una comparación. Una comparación solo puede ser cierta o falsa.
resultado = a > b
La variable resultado será true si a es mayor que b, y será false si a no es mayor que b. Podemos usar ese resultado posteriormente en un if:
if (resultado):
print("a es mayor que b")
else:
print("a no es mayor que b")
Los valores true y false se llaman valores "booleanos", al ser lo más cercano a la lógica electrónica sobre la que se basa la programación (los famosos unos y ceros, donde 1 es true y 0 es false).
Añadir nuevo comentario