Condicionales if/elif/else

Mapa conceptual
Estructura: if condicion: (bloque indentado), opcionalmente varios elif: y un else: final. La condición debe reducirse a True o False; la indentación (4 espacios) delimita el bloque.
Esqueleto de una decisión: if nota = 90: y debajo, sangrado, letra = A. Los dos puntos y la sangría marcan qué líneas pertenecen al if.
# califica.py — decide UNA sola rama
nota = 95
if nota >= 90:
letra = "A"
elif nota >= 80:
letra = "B"
elif nota >= 70:
letra = "C"
else:
letra = "R"
print(f"Nota {nota} -> letra {letra}")elif es «else if», y se detiene al primer acierto
Con if / if / if se evalúan TODAS las condiciones (puede entrarse en varias). Con if / elif / elif solo se ejecuta la primera rama verdadera. Para categorías excluyentes —una nota da una sola letra— hay que usar elif.
- if nota = 90: letra = A.
- elif nota = 80: letra = B (solo se prueba si la primera falló).
- elif nota = 70: letra = C.
- else: letra = R (todo lo demás).
Si pusieras if en lugar de elif para la B, una nota de 95 entraría en A y volvería a entrar en B porque 95 = 80 también es True: el orden y el elif importan.
Con el código de la sección (if = 90 A / elif = 80 B / elif = 70 C / else R), ¿qué letra recibe una nota de 85?
Dos if seguidos pueden ejecutar ambos bloques; un if y un elif solo ejecutan uno.
Une cada fragmento con lo que ocurre para los valores indicados.
Errores típicos con condicionales
- Olvidar los dos puntos : tras la condición: if x 0 sin : es error de sintaxis.
- Indentar mal: en Python la sangría ES la llave; un bloque mal sangrado cambia o rompe la lógica.
- Usar = (asignación) en vez de == (comparación) dentro del if.
- Comparar con and/or incorrectamente: 0 x 10 es válido en Python, pero x 0 and 10 es error.
Combinar condiciones (lógica booleana)
if edad = 18 and pais == MX: exige ambas. if es_vip or total 1000: basta una. not invierte: if not esta_bloqueado:. De Morgan ayuda a reescribir: not (A and B) equivale a (not A) or (not B).
La gramática de decidir
Python · if
Referencia oficial de if/elif/else con ejemplos de cascadas condicionales.
Escribe un condicional de tres ramas que clasifique un número como «bajo» (menor que 5), «medio» (entre 5 y 9) o «alto» (10 o más). Explica en qué orden pusiste las condiciones y por qué ese orden evita que un número caiga en dos categorías.
Reflexiona: ¿como se relaciona este tema con los demas temas del curso? ¿Que ejemplo practico podrias dar?
Python Tutorial
Tutorial oficial de Python 3 para principiantes.