Python 🐍 : Estructuras Condicionales (IF, ELSE, ELIF)
En cualquier lenguaje de programación, las estructuras de control son fundamentales. Son las que permiten que un programa tome decisiones, ejecutando diferentes bloques de código según ciertas condiciones y repetir bloques de código ( bucles ).
En este artículo, exploraremos en detalle cómo funcionan las estructuras condicionales if
, else
y elif
y operadores lógicos, cómo se utilizan y algunos ejemplos prácticos para ilustrar su uso.
¿Qué son las Estructura de Control?
Las estructuras de control son instrucciones que alteran la secuencia natural de ejecucción del código. En lugar de ejecutar línea por línea de arriba hacia abajo, se puede:
- Tomar decisiones (
if
,else
,elif
) - Repetir tareas, los denominados “bucles” (
for
,while
) - Saltar o continuar iteraciones (
break
,continue
) - Ignorar instrucciones temporalmente (
pass
)
Estructuras de Control Condicional
Estas estructuras le dicen al programa qué hacer en función de una condición. Dependiendo si la condición es True
(verdadera) o False
(falso), el flujo de ejecución del programa cambia.
En Python, se utilizan principalmente las declaraciones if
, elif
y else
para gestionar el flujo del programa basado en estas condiciones.
Para ello debemos saber que hace cada una de estas instrucciones:
if
: Evalúa una condición y ejecuta el bloque de código asociado si la condición es verdadera.else
: Se ejecuta si la condición delif
es falseelif
: Se usa para verificar múltiples condiciones, y se ejecuta cuando una de ellas es verdadera.
A continuación tenemos un flujo que ilustra cómo funciona una estructura condicional. Esto muestra un flujo de decisión básico usando una estructura if
, elif
, y else
.
---
title: Estructuras Condicionales en Python
---
graph TD
A([Inicio]) --> B[Evaluar Expresión Condicional]
B -->|Condición Verdadera| C[Ejecutar Bloque If]
B -->|Condición Falsa| D[Evaluar Condición Elif]
D -->|Condición Elif Verdadera| E[Ejecutar Bloque Elif]
D -->|Condición Elif Falsa| F[Ejecutar Bloque Else]
C --> G([Fin])
E --> G
F --> G
Nota: Una condición es una expresión que se evalúa como
True
oFalse
. Es decir, toda condición es una expresión, pero no toda expresión es una condición.
Sintaxis Básica de estructuras de control
La sintaxis básica de una declaración condicional en Python es la siguiente:
1
2
3
4
5
6
if expresion_condicional:
# Bloque de código a ejecutar si la condición es verdadera
elif otra_expresion_condicional:
# Bloque de código a ejecutar si la otra condición es verdadera
else:
# Bloque de código a ejecutar si ninguna condición es verdadera
Ejemplo básico
Vamos a comenzar con un ejemplo básico para ilustrar el uso de condicionales en Python:
1
2
3
4
5
6
edad = 20
if edad >= 18:
print("Eres un adulto.")
else:
print("Eres menor de edad.")
Explicación del Código:
- Declaración
if
:if edad >= 18:
verifica si el valor deedad
es mayor o igual a 18. - Bloque de Código: El bloque de código indentado que sigue a la declaración
if
se ejecuta si la condición es verdadera. - Declaración
else
: Si la condiciónif
es falsa, se ejecuta el bloque de código indentado bajoelse
.
Uso de elif para Múltiples Condiciones
Puedes usar elif
para verificar múltiples condiciones. Aquí tienes un ejemplo:
1
2
3
4
5
6
7
8
nota = 85
if nota >= 90:
print("Aprobado con distinción")
elif nota >= 70:
print("Aprobado")
else:
print("Reprobado")
Explicación del Código:
- Primera Condición (
if
): Verifica sinota
es mayor o igual a 90. - Segunda Condición (
elif
): Si la primera condición no se cumple, verifica sinota
es mayor o igual a 70. - Condición Final (
else
): Si ninguna de las condiciones anteriores es verdadera, se ejecuta el bloque bajoelse
.
Operadores Lógicos
Cuando queremos evaluar más de una condición al mismo tiempo, utilizamos los operadores lógicos. Estos operadores nos permiten construir condiciones más complejas y tomar decisiones más eficientes en nuestros programas.
Python nos proporciona tres operadores lógicos principales:
and
: Ambas condiciones deben ser verdaderas.or
: Al menos una de las condiciones debe ser verdadera.not
: Invierte el valor de verdad de la condición.
Condiciones Complejas
Puedes combinar múltiples condiciones usando operadores lógicos como and
, or
y not
:
1
2
3
4
5
6
7
edad = 25
tiene_licencia = True
if edad >= 18 and tiene_licencia:
print("Puedes conducir.")
else:
print("No puedes conducir.")
Explicación del Código:
- La condición
edad >= 18 and tiene_licencia
se evalúa como verdadera solo si ambas sub-condiciones son verdaderas.
Condicionales Anidados
Los condicionales también pueden ser anidados, es decir, tener una estructura if
dentro de otra:
1
2
3
4
5
6
7
8
9
10
edad = 16
tiene_permiso = True
if edad >= 18:
print("Eres un adulto.")
else:
if tiene_permiso:
print("Eres menor de edad pero tienes permiso.")
else:
print("Eres menor de edad y no tienes permiso.")
Aquí, si la primera condición edad >= 18
es falsa, se evalúa una segunda condición dentro del bloque else
.
Expresiones Condicionales Tenarias
Las expresiones condicionales ternarias en Python permiten escribir de manera más concisa en una sola línea las condiciones.
Para usar expresiones condicionales en una sola línea para casos simples. La sintaxis es sencilla:
1
valor_si_es_verdadero if condicion else valor_si_es_falso
Ejemplo Básico
1
2
3
edad = 20
mensaje = "Eres un adulto." if edad >= 18 else "Eres menor de edad."
print(mensaje)
En esta expresión condicional, el valor de mensaje
depende de la condición edad >= 18
.
Los condicionales son herramientas poderosas en Python que permiten que tu programa tome decisiones basadas en condiciones específicas. Comprender cómo usar if
, elif
, y else
te permitirá controlar el flujo de tu programa y gestionar diferentes escenarios de manera efectiva. Además, los operadores lógicos, condicionales anidados y expresiones condicionales te ofrecen flexibilidad para abordar problemas más complejos.