UTF-8: Más utilizada, soporta todos los idiomasASCII: Limitada a 128 caracteresUnicode: Flexible, soporta hasta 65,536 caracteres
Ejercicio 2: Encoding
¿Qué salida produciría el siguiente código y por qué?
# Sin declaración de encoding
print("España")
Asignación Múltiple
Asignar múltiples variables en una sola instrucción.
a, b, c = 'casa', 244, False
Ejemplo con Tupla y Lista
# Con tupla
ejemplo_tupla = ('Título', 2023)
texto, anio = ejemplo_tupla
# Con lista
ejemplo_lista = ['león', 'África']
animal, continente = ejemplo_lista
Ejercicio 3: Asignación Múltiple
Escribe una línea de código que asigne los valores 10, 20, 30 a las variables x, y, z respectivamente.
Estructuras de Control
Secuenciales: Ejecución línea por líneaSelectivas: Decisiones basadas en condicionesIterativas: Repetición de código
Estructuras de Control Condicionales
Permiten tomar decisiones basadas en condiciones.
¿Qué es una Bifurcación?
Instrucción que permite tomar una decisión.
Operadores Relacionales
Utilizados para comparar dos valores.
Tipos de Operadores Relacionales
Operador
Descripción
<
Menor que
>
Mayor que
<=
Menor o igual que
>=
Mayor o igual que
==
Igual que
!=
Distinto que
Ejemplo de Operadores Relacionales
a = 10
b = 5
print(a > b) # True
print(a < b) # False
print(a == b) # False
print(a != b) # True
Ejercicio 4: Operadores Relacionales
¿Qué valor devolverán estas expresiones?
x = 15
y = 15
z = "15"
a = x == y
b = x == z
c = x > y
d = x >= y
Operadores Lógicos
Para evaluar múltiples condiciones simultáneamente.
Operador
Explicación
and
Verdadero si ambas condiciones son verdaderas
or
Verdadero si al menos una condición es verdadera
xor
Verdadero si solo una condición es verdadera
Ejemplo de Operadores Lógicos
a = 10
b = 5
print(a > 5 and b > 3) # True
print(a > 15 or b > 3) # True
print(a > 15 and b > 3) # False
Clasificación de Estructuras Selectivas
Selectivas simples: Ejecutan código si se cumple una condiciónSelectivas dobles: Alternativa entre dos bloques de códigoSelectivas múltiples: Combinan varias condiciones
Sentencias if / elif / else
Ejecutan código basado en condiciones.
Sintaxis de la Sentencia If
if condición:
# bloque de código 1
Sintaxis de la Sentencia If-Else
if condición:
# bloque de código 1
else:
# bloque de código 2
Sintaxis de la Sentencia If-Elif-Else
if condición1:
# bloque de código 1
elif condición2:
# bloque de código 2
else:
# bloque de código 3
Ejemplo de Selectiva Simple
x = 10
if x > 5:
print("x es mayor que 5")
Ejemplo de Selectiva Doble
x = 10
if x > 15:
print("x es mayor que 15")
else:
print("x es menor o igual que 15")
Ejemplo de Selectiva Múltiple
x = 10
if x > 15:
print("x es mayor que 15")
elif x > 5:
print("x es mayor que 5 pero menor o igual que 15")
else:
print("x es menor o igual que 5")
Ejercicio 5: Estructura If
Escribe un programa que determine si un número es positivo, negativo o cero.
Ejercicio 6: Calificaciones
Escribe un programa que califique una nota de 0 a 100 en:
Excelente (90-100)
Muy Bueno (80-89)
Bueno (70-79)
Regular (60-69)
Insuficiente (0-59)
Estructuras If Anidadas
x = 10
if x > 7:
if x % 2 == 0:
print("x es mayor que 7 y par")
else:
print("x es mayor que 7 e impar")
else:
print("x es menor o igual que 7")
Ejercicio 7: Año Bisiesto
Escribe un programa que determine si un año es bisiesto. Un año es bisiesto si:
Es divisible por 4
No es divisible por 100, a menos que sea divisible por 400
Estructuras de Control Iterativas
Permiten ejecutar un código repetidamente.
Bucles For
Para iterar sobre una secuencia conocida.
for i in range(5):
print(i)
Función Range()
Genera secuencias numéricas.
# range(parada)
for i in range(5):
print(i) # 0, 1, 2, 3, 4
# range(inicio, parada)
for i in range(2, 5):
print(i) # 2, 3, 4
# range(inicio, parada, paso)
for i in range(0, 10, 2):
print(i) # 0, 2, 4, 6, 8
Ejercicio 8: Suma con For
Escribe un programa que sume todos los números del 1 al 10 usando un bucle for.
Bucles While
Se ejecutan mientras una condición sea verdadera.
i = 0
while i < 5:
print(i)
i += 1
Ejercicio 9: Factorial con While
Escribe un programa que calcule el factorial de un número usando un bucle while.
Sentencias Break y Continue
Controlan el flujo dentro de los bucles.
Ejemplo de Break
for i in range(10):
if i == 5:
break
print(i)
Ejemplo de Continue
for i in range(10):
if i % 2 == 0:
continue
print(i)
Ejercicio 10: Números Primos
Escribe un programa que imprima todos los números primos entre 1 y 20.
Bucles Anidados
Bucles dentro de bucles.
for i in range(3):
for j in range(3):
print(f"({i}, {j})")
Ejemplo Práctico: Tabla de Multiplicación
for i in range(1, 6):
for j in range(1, 6):
print(f"{i} x {j} = {i * j}")
print() # Línea en blanco entre tablas
Ejercicio 11: Patrón de Asteriscos
Escribe un programa que dibuje un triángulo de asteriscos:
*
**
***
****
*****
Combinación de Estructuras
Usando condicionales dentro de bucles.
for i in range(1, 11):
if i % 2 == 0:
print(f"{i} es un número par")
else:
print(f"{i} es un número impar")
Ejercicio 12: FizzBuzz
Escribe un programa que imprima los números del 1 al 20, pero:
Para múltiplos de 3, imprime “Fizz”
Para múltiplos de 5, imprime “Buzz”
Para múltiplos de ambos, imprime “FizzBuzz”
Proyecto Final: Calculadora con Menú
Crea una calculadora que muestre un menú con las siguientes operaciones:
Suma
Resta
Multiplicación
División
Potencia
Salir
El programa debe pedir dos números y realizar la operación seleccionada.
Resumen
Las sentencias de control permiten controlar el flujo de ejecución
Estructuras selectivas: if, if-else, if-elif-else
Estructuras iterativas: for, while
Sentencias break y continue
La indentación es crucial en Python para definir bloques
Combinando estas estructuras podemos crear programas complejos