Tema 3: Control de flujo en Python
El control de flujo permite modificar el orden en que se ejecutan las instrucciones de un
programa. Python ofrece estructuras condicionales y bucles que permiten tomar
decisiones y repetir tareas de forma eficiente.
Estructuras condicionales
Las estructuras condicionales permiten ejecutar bloques de código dependiendo de si se
cumple una condición.
• if, else, elif: Son las instrucciones básicas para tomar decisiones.
o if evalúa una condición.
o elif permite evaluar condiciones adicionales si la anterior no se cumple.
o else se ejecuta si ninguna condición anterior fue verdadera.
python
edad = 18
if edad >= 18:
print("Eres mayor de edad")
else:
print("Eres menor de edad")
• Operadores relacionales: Comparan valores y devuelven True o False.
o >, <, >=, <=, ==, !=
• Operadores lógicos: Permiten combinar condiciones.
o and: ambas condiciones deben ser verdaderas.
o or: al menos una debe ser verdadera.
o not: invierte el valor lógico.
Bucles
Los bucles permiten repetir bloques de código mientras se cumpla una condición o
durante un número determinado de veces.
Bucle while
• Ejecuta el bloque mientras la condición sea verdadera.
• Puede usarse para crear bucles infinitos con while True, saliendo con break.
• continue permite saltar a la siguiente iteración sin ejecutar el resto del código.
• Se puede usar else para ejecutar código si el bucle termina sin usar break.
python
x=1
while x < 5:
print(x)
x += 1
Ejemplo con break:
python
while True:
text = input("String to capitalize [type q to quit]: ")
if text == "q":
break
print([Link]())
Ejemplo con continue:
python
while True:
value = input("Integer, please [q to quit]: ")
if value == 'q':
break
number = int(value)
if number % 2 == 0:
continue
print(number, "squared is", number*number)
Bucle for
• Recorre elementos de una secuencia como listas, tuplas, cadenas o rangos.
• También admite break, continue y else.
python
frutas = ('fresa', 'melón', 'uva')
for fruta in frutas:
print(fruta)
Uso de range():
python
for i in range(1, 6, 2):
print(i) # 1, 3, 5
Ejemplo con else:
python
word = 'Casa'
for letter in word:
if letter == 'x':
print("¡Una 'x'!")
break
print(letter)
else:
print("No hay una 'x' en", word)