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 ifsin 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 tú) entienda el orden.
7) None y not — varios ejemplos
None significa “sin valor”. Para comparar con None usá is None ois 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 coninput() 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 quieres 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). Puedes 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+), tienes 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.


