Fundamentos del Control de Flujo en Python
Ejecución secuencial
x = 5
y = 3
resultado = x + y
print(resultado)
## 8
Valores lógicos (booleanos)
verdadero = True
falso = False
print(type(True))
## <class 'bool'>
print(type(False))
## <class 'bool'>
Operadores de comparación
print(5 == 5)
## True
print(5 != 3)
## True
print("hola" == "Hola")
## False
print(10 > 5)
## True
print(2 < 7)
## True
print(5 >= 5)
## True
print(4 <= 3)
## False
edad = 25
limite = 18
print(edad > limite)
## True
Operadores lógicos
print(True and False)
## False
print(True or False)
## True
print(not True)
## False
edad = 25
tiene_licencia = True
puede_alquilar = (edad >= 21) and tiene_licencia
print(puede_alquilar)
## True
Condicionales (if, elif, else)
temperatura = 30
if temperatura > 25:
print("Hace calor hoy")
## Hace calor hoy
edad = 16
if edad >= 18:
print("Eres mayor de edad")
else:
print("Eres menor de edad")
## Eres menor de edad
nota = 85
if nota >= 90:
calificacion = "A"
elif nota >= 80:
calificacion = "B"
elif nota >= 70:
calificacion = "C"
else:
calificacion = "F"
print("Calificación:", calificacion)
## Calificación: B
Estructura equivalente a ifelse()
numeros = [-3, -1, 0, 2, 5, -7, 8]
signos = ["No negativo" if n >= 0 else "Negativo" for n in numeros]
print(list(zip(numeros, signos)))
## [(-3, 'Negativo'), (-1, 'Negativo'), (0, 'No negativo'), (2, 'No negativo'), (5, 'No negativo'), (-7, 'Negativo'), (8, 'No negativo')]
switch en Python (match-case desde 3.10)
mes = "febrero"
año = 2024
match mes:
case "enero": dias = 31
case "febrero":
dias = 29 if (año % 4 == 0 and (año % 100 != 0 or año % 400 == 0)) else 28
case "marzo": dias = 31
case "abril": dias = 30
case _: dias = None
print(f"{mes} de {año} tiene {dias} días")
## febrero de 2024 tiene 29 días
Bucles (for)
numeros = [10, 20, 30]
for numero in numeros:
resultado = numero * 2
print(f"Número: {numero} - Doble: {resultado}")
## Número: 10 - Doble: 20
## Número: 20 - Doble: 40
## Número: 30 - Doble: 60