4. Condicionales: Tomando Decisiones 🚦
Las condiciones son el corazón de la lógica: el programa elige qué hacer según si algo es
verdadero (True) o falso (False). En Python la indentación (espacios) marca qué código
“pertenece” a cada if.
1) Solo if — cinco mini ejemplos
Si la condición es cierta, se ejecuta el bloque indentado. Si no, Python sigue después del if
sin imprimir nada de ese bloque (no hay else).
2) if … else — cinco ejemplos
Dos caminos: si la condición es verdadera, un bloque; si no, el otro.
3) if … elif … else — cinco ejemplos
Varias condiciones en cascada: Python evalúa de arriba abajo y ejecuta el primer bloque cuya
condición sea True. Si ninguna coincide, va al else (si existe).
4) Cinco ejemplos con and (Y)
and: todas las condiciones unidas deben ser verdaderas a la vez.
5) Cinco ejemplos con or (O)
or: si al menos una condición es verdadera, el resultado es verdadero.
6) Combinados: and, or y paréntesis
Python evalúa and antes que or en expresiones largas. Si no estás seguro, usá
paréntesis para que el lector (y vos) entienda el orden.
7) None y not — varios ejemplos
None significa “sin valor”. Para comparar con None usá is None o
is not None (es el estilo recomendado en Python). not invierte:
not True → False.
8) Pertenencia: in
Comprueba si un valor está dentro de una lista, tupla, string, etc.
9) Expresión condicional (if en una línea)
Para asignar un valor u otro según una condición simple.
10) Menú de opciones en consola
Un patrón muy común es mostrar opciones con print(), leer la elección con
input() y usar una cadena de if / elif / else. Así el
usuario “navega” por tu programa sin interfaz gráfica.
Tip: input() siempre devuelve texto (str). Por eso
comparamos con "1" y no con 1. Si querés número, usá
int(input("...")) dentro de un try/except (lo verás más adelante con
errores).
11) Ejemplo: máquina dispensadora
Igual idea que el menú, pero con precios, stock y comprobaciones: ¿alcanza el dinero?, ¿hay producto?, ¿código válido? Todo encadenado con condicionales.
Fijate cómo el if exterior elige el producto y el interior responde a tres
preguntas: ¿hay stock?, ¿alcanza el dinero?, si todo ok → entregar (y opcionalmente calcular vuelto). Podés
extenderlo con un bucle while para que la máquina no termine tras una sola compra (lo harás en la
lección de bucles).
Siguiente paso: match / case
Para ramificar como un switch de otros lenguajes (Python 3.10+), tenés la lección dedicada:
5. match / case →
🐍 Desafío: El portero de la disco PRO
Crea una variable tengo_entrada (True/False) y otra variable edad. Escribe un if que diga "Pasa" solo si eres mayor de 18 y además tienes entrada (usa and).
👁️ Ver solución sugerida
Pon a prueba lo aprendido
Responde el quiz cuando te sientas cómodo con if, else, elif, and y or.