Lección 4 de 8 30 min

Condiciones: if, elif y else

Un programa que siempre hace lo mismo sin importar la situación no sirve de mucho. Las condiciones te permiten decirle a Python: "si pasa X, haz esto; si no, haz aquello". Es la primera pieza de lógica real.

Estructura básica: if / else

edad = int(input("¿Cuántos años tienes? "))

if edad >= 18:
    print("Puedes entrar.")
else:
    print("Lo siento, eres menor de edad.")

Dos reglas de Python que no son negociables:

  • Los dos puntos : al final de cada condición son obligatorios.
  • La indentación (4 espacios o 1 tabulador) define qué código pertenece al bloque. Python usa el espacio como estructura, no llaves como Java/JavaScript.

Múltiples condiciones: elif

nota = int(input("Introduce tu nota (0-10): "))

if nota >= 9:
    print("Sobresaliente")
elif nota >= 7:
    print("Notable")
elif nota >= 5:
    print("Aprobado")
else:
    print("Suspenso")

Python evalúa de arriba hacia abajo y entra en el primer bloque cuya condición sea verdadera. El resto se salta.

Operadores de comparación

a == b   # igual a
a != b   # distinto de
a > b    # mayor que
a < b    # menor que
a >= b   # mayor o igual
a <= b   # menor o igual

Operadores lógicos

if edad >= 18 and tiene_dni:
    print("Acceso permitido")

if es_admin or es_moderador:
    print("Puedes editar")

if not bloqueado:
    print("Cuenta activa")
  • and — las dos condiciones deben ser verdaderas.
  • or — basta con que una sea verdadera.
  • not — invierte el resultado.

Condiciones con texto

color = input("¿Color favorito? ").lower()  # .lower() pasa a minúsculas

if color == "azul":
    print("Cielo y mar.")
elif color == "rojo":
    print("Fuego y pasión.")
elif color in ["verde", "amarillo"]:
    print("Colores de la naturaleza.")
else:
    print(f"'{color}' también es un buen color.")

Ejercicio práctico

Crea clasificador.py que clasifique una temperatura:

temp = float(input("Temperatura en °C: "))

if temp < 0:
    print("Bajo cero — cuidado con el hielo.")
elif temp < 15:
    print("Frío — abrígate.")
elif temp < 25:
    print("Agradable.")
elif temp < 35:
    print("Calor — hidratación importante.")
else:
    print("Extremo — precaución.")

Checklist antes de marcar completada

  • Entiendes por qué Python usa indentación en lugar de llaves.
  • Sabes la diferencia entre if / elif / else.
  • Puedes usar and, or y not en condiciones.
  • Has probado clasificador.py con temperaturas diferentes.

Siguiente parada: los bucles. Con for y while puedes repetir una acción tantas veces como necesites sin copiar código. Ahí empieza la programación que escala.

📝 Comprueba lo aprendido

Responde estas 4 preguntas y acierta al menos el 60% para desbloquear el botón "Marcar como completada".

1 ¿Qué pasa si dos condiciones `if` seguidas son verdaderas?

2 ¿Qué hace `color.lower()` antes de comparar?

3 ¿Cuál es la diferencia entre `==` y `=` en Python?

4 `edad >= 18 and tiene_dni` es verdadero cuando...

Cuando termines, guarda tu avance. Así podrás continuar desde tu panel y desbloquear el certificado al completar el curso.