martes, 17 de junio de 2025

Acerca de este blog

 

Acerca de este blog

Este blog fue creado como parte del Proyecto del Tercer Parcial de la materia M1S3, con el objetivo de ayudar a comprender las estructuras básicas de programación en Python.

Incluye teoría, ejemplos comentados, explicaciones detalladas y casos prácticos para que los lectores puedan aprender de forma sencilla y clara.

El desarrollo del proyecto fue realizado en pareja, dividiendo tareas como la redacción, codificación de ejemplos, diseño y publicación de entradas.

Autores:

  • Yanco Munguia: Codificación, redacción, pruebas
  • Santiago lima: Diseño, edición, organización del contenido

Gracias por visitar nuestro blog. ¡Esperamos que te haya sido útil!

Bucle while con condiciones avanzadas

 

Bucle while con condiciones avanzadas

El bucle while también puede usarse con condiciones múltiples o para validar entradas del usuario. Estas estructuras permiten crear lógica más completa y realista.

Ejemplo 1: Menú interactivo

opcion = ""

while opcion != "salir":
    print("Menú principal")
    print("1. Jugar")
    print("2. Opciones")
    print("Escribe 'salir' para cerrar")
    opcion = input("Elige una opción: ")

Explicación: El programa sigue ejecutándose hasta que el usuario escriba “salir”.

Ejemplo 2: Intentos limitados de acceso

usuario = ""
intentos = 0

while usuario != "admin" and intentos < 3:
    usuario = input("Usuario: ")
    intentos += 1

if usuario == "admin":
    print("Bienvenido")
else:
    print("Demasiados intentos fallidos")

Explicación: Simula un login con máximo 3 intentos. Si no acierta, se bloquea.

Casos prácticos:

1. Simulador de carga

progreso = 0

while progreso < 100:
    print("Cargando...", progreso, "%")
    progreso += 25

print("¡Carga completa!")

2. Validar número positivo

numero = -1

while numero < 0:
    numero = int(input("Ingresa un número positivo: "))

print("Número ingresado:", numero)

3. Contador con condición doble

x = 0

while x < 10 and x != 7:
    print("x vale:", x)
    x += 1

Bucle while básico

 

Bucle while en Python

El bucle while ejecuta un bloque de instrucciones mientras la condición se mantenga verdadera. Es muy útil cuando no sabemos cuántas veces necesitaremos repetir algo.

Debemos asegurarnos de que la condición cambie en algún momento, o el programa podría entrar en un bucle infinito.

Ejemplo 1: Contador del 1 al 5

contador = 1

while contador <= 5:
    print("Contando:", contador)
    contador += 1

Explicación: Se imprimen los números del 1 al 5 usando una variable que se incrementa.

Ejemplo 2: Esperar una respuesta

respuesta = ""

while respuesta != "sí":
    respuesta = input("¿Terminaste la tarea? ")

Explicación: El programa sigue preguntando hasta que el usuario escriba “sí”.

Casos prácticos:

1. Números pares hasta el 10

numero = 2

while numero <= 10:
    print(numero)
    numero += 2

2. Adivinar el número

secreto = 7
intento = 0
respuesta = -1

while respuesta != secreto:
    respuesta = int(input("Adivina el número: "))
    intento += 1

print("¡Correcto! Lo lograste en", intento, "intentos.")

3. Simular batería descargándose

bateria = 100

while bateria > 0:
    print("Batería restante:", bateria, "%")
    bateria -= 20

print("¡Batería agotada!")

Recorriendo listas con for

 

Recorriendo listas con for

El bucle for no solo se usa con números. También lo usamos para recorrer listas, cadenas de texto y otras estructuras en Python.

Este tipo de bucle es ideal cuando quieres procesar cada elemento de una lista uno por uno.

Ejemplo 1: Frutas

frutas = ["manzana", "banana", "pera"]

for fruta in frutas:
    print("Fruta:", fruta)

Explicación: El ciclo recorre cada fruta de la lista y la imprime en consola.

Ejemplo 2: Saludos

nombres = ["Luis", "Ana", "Carlos"]

for nombre in nombres:
    print("Hola,", nombre)

Explicación: Se imprime un saludo diferente para cada nombre en la lista.

Casos prácticos:

1. Calcular el promedio

calificaciones = [8, 9, 10, 7]
suma = 0

for cal in calificaciones:
    suma += cal

promedio = suma / len(calificaciones)
print("Promedio:", promedio)

2. Contar valores mayores a 5

numeros = [3, 6, 8, 2, 9, 1]
contador = 0

for numero in numeros:
    if numero > 5:
        contador += 1

print("Números mayores a 5:", contador)

3. Mostrar letras de una palabra

palabra = "Python"

for letra in palabra:
    print(letra)

Bucle for con range()

 

Bucle for con range() en Python

El bucle for nos permite ejecutar un bloque de código muchas veces, recorriendo una secuencia de valores. La función range() es la más usada para generar rangos de números.

Su sintaxis básica es:

for variable in range(inicio, fin, paso):
    # instrucciones

Ejemplo 1: Repeticiones

for i in range(5):
    print("Repetición número:", i)

Explicación: El ciclo se ejecuta 5 veces e imprime los valores de i desde 0 hasta 4.

Ejemplo 2: Números del 1 al 5

for i in range(1, 6):
    print(i)

Explicación: El ciclo imprime los números del 1 al 5 usando range(1, 6).

Casos prácticos:

1. Primeros 10 números pares

for i in range(2, 21, 2):
    print(i)

2. Cuenta regresiva del 10 al 1

for i in range(10, 0, -1):
    print(i)

3. Tabla del 7

for i in range(1, 11):
    print("7 x", i, "=", 7 * i)

match con tipos de datos y patrones

 

match con tipos de datos y patrones en Python


Además de comparar valores exactos, Python permite usar match con tipos de datos y estructuras complejas, como listas, tuplas o incluso expresiones.
Esto se conoce como estructuras de patrón (pattern matching) y permite escribir código más organizado y expresivo.

Con esta técnica se pueden:

  • Detectar el tipo de un valor

  • Validar la estructura de una lista o tupla

  • Descomponer valores en partes

Ejemplo de código 1:


dato = 3.14 match dato: case int(): print("Es un número entero") case float(): print("Es un número decimal") case str(): print("Es una cadena de texto") case _: print("Tipo desconocido")

Explicación:
Se evalúa el tipo del valor dato. Python identifica el tipo internamente y ejecuta el bloque correcto.

Ejemplo de código 2:


persona = ("Luis", 18) match persona: case (nombre, edad) if edad >= 18: print(f"{nombre} es mayor de edad") case (nombre, edad): print(f"{nombre} es menor de edad")

Explicación:
Aquí usamos un patrón para descomponer una tupla. Se evalúa la edad y se imprime si es mayor o menor.

Casos prácticos:

Verificar el tipo de dato:


valor = True match valor: case bool(): print("Es booleano") case int(): print("Es entero") case _: print("Tipo desconocido")

 Analizar una lista:


datos = [1, 2, 3] match datos: case [1, 2, 3]: print("Lista con 1, 2 y 3") case [_, _, _]: print("Lista con 3 elementos cualquiera") case _: print("Otra lista")

Variables y Tipos de Datos

 

Variables y Tipos de Datos en Python

Las variables son fundamentales en la programación. Nos permiten guardar datos para usarlos después. En Python, no es necesario decir qué tipo de dato estamos guardando, el lenguaje lo detecta automáticamente.

Los tipos de datos más comunes son:

  • int: Números enteros (como 5, -3, 100)
  • float: Números con decimales (como 3.14, 1.68)
  • str: Cadenas de texto (como \"Hola\", \"Lucía\")
  • bool: Verdadero o Falso (True, False)

Ejemplo de código:

nombre = "Lucía"
edad = 20
altura = 1.68
estudiante = True

print("Nombre:", nombre)
print("Edad:", edad)
print("Altura:", altura)
print("¿Es estudiante?:", estudiante)

Explicación: Se declaran cuatro variables, cada una con un tipo diferente. Después, se imprimen usando print().

Casos prácticos:

1. Calcular el área de un rectángulo

base = 10
altura = 5
area = base * altura
print("Área del rectángulo:", area)

2. Verificar si puede entrar a una película para adultos

edad = 17
mayoria_edad = edad >= 18
print("¿Puede entrar a la función?:", mayoria_edad)

match básico

 Estructura match en Python


Teoría:
La estructura match fue introducida en Python 3.10 como una alternativa moderna y más legible al uso de múltiples if-elif-else. Es similar a switch en otros lenguajes como C, Java o JavaScript.

match permite comparar el valor de una variable con varios posibles casos. Si alguno coincide, se ejecuta su bloque de código correspondiente. Si no, se puede usar un caso general con _, que actúa como "default".

Sintaxis básica:

match variable: case valor1: # código para valor1 case valor2: # código para valor2 case _: # código por defecto

Ejemplo de código 1:


dia = "lunes" match dia: case "lunes": print("Inicio de la semana") case "viernes": print("Último día laboral") case "sábado" | "domingo": print("Es fin de semana") case _: print("Día normal")

Explicación:
La variable dia se compara con varios valores. Si coincide con alguno, se ejecuta ese bloque. Los días "sábado" y "domingo" se agrupan usando |.

Ejemplo de código 2:


opcion = 2 match opcion: case 1: print("Elegiste la opción 1") case 2: print("Elegiste la opción 2") case 3: print("Elegiste la opción 3") case _: print("Opción no válida")

Explicación:
Este ejemplo es típico de menús en consola donde el usuario elige una opción.

Casos prácticos:

 Clasificar clima:


clima = "lluvia" match clima: case "sol": print("Hace buen clima") case "nieve": print("Está nevando") case "lluvia": print("Necesitas un paraguas") case _: print("No se reconoce el clima")

 Evaluar una calificación numérica:


calificacion = 10 match calificacion: case 10: print("Excelente") case 9: print("Muy bien") case 8: print("Bien") case _: print("Calificación no registrada")

if-elif-else (Condiciones múltiples)

 

Condiciones múltiples con if-elif-else

En Python podemos tomar decisiones más complejas usando if, elif y else. Esta estructura permite ejecutar diferentes bloques de código según múltiples condiciones.

Es ideal cuando no basta con una sola comparación. Por ejemplo, para clasificar una calificación, una edad o una hora del día.

Ejemplo 1: Clasificación por calificación

calificacion = 85

if calificacion >= 90:
    print("Excelente")
elif calificacion >= 80:
    print("Muy bien")
elif calificacion >= 70:
    print("Bien")
else:
    print("Necesitas mejorar")

Explicación: Dependiendo del valor de calificacion, el programa imprime una categoría. Solo se ejecuta un bloque.

Ejemplo 2: Saludo según la hora

hora = 15

if hora < 12:
    print("Buenos días")
elif hora < 18:
    print("Buenas tardes")
else:
    print("Buenas noches")

Explicación: El programa analiza la hora y responde con un saludo adecuado.

Casos prácticos:

1. Clasificar edad

edad = 8

if edad < 13:
    print("Eres un niño")
elif edad < 18:
    print("Eres un adolescente")
elif edad < 65:
    print("Eres un adulto")
else:
    print("Eres un adulto mayor")

2. Evaluar temperatura

temperatura = 34

if temperatura > 40:
    print("¡Calor extremo!")
elif temperatura > 30:
    print("Hace mucho calor")
elif temperatura > 20:
    print("Clima agradable")
else:
    print("Hace frío")

if-else

 Condiciones múltiples con if-elif-else


Teoría:
En muchas situaciones necesitamos más de dos opciones. Por ejemplo, no basta con saber si una persona aprobó o no, también podríamos clasificar su calificación como "Excelente", "Bien", "Regular", etc.

Para esto usamos if-elif-else en Python:

  • if: evalúa la primera condición.

  • elif: evalúa condiciones adicionales si la anterior no se cumple.

  • else: se ejecuta si ninguna condición anterior se cumple.

Sintaxis:

if condición1: # código si se cumple condición1 elif condición2: # código si se cumple condición2 elif condición3: # ... else: # código si no se cumplió ninguna anterior

Ejemplo de código 1:


calificacion = 85 if calificacion >= 90: print("Excelente") elif calificacion >= 80: print("Muy bien") elif calificacion >= 70: print("Bien") else: print("Necesitas mejorar")

Explicación:
El programa evalúa desde la calificación más alta. Cuando una condición se cumple, se ejecuta y ya no revisa las demás.

Ejemplo de código 2:


hora = 15 if hora < 12: print("Buenos días") elif hora < 18: print("Buenas tardes") else: print("Buenas noches")

Explicación:
Se evalúa la hora del día para mostrar un saludo correspondiente.

Casos prácticos:

 Clasificar edad:



if edad < 13: print("Eres un niño") elif edad < 18: print("Eres un adolescente") elif edad < 65: print("Eres un adulto") else: print("Eres un adulto mayor")

Evaluar niveles de temperatura:


temperatura = 34 if temperatura > 40: print("¡Calor extremo!") elif temperatura > 30: print("Hace mucho calor") elif temperatura > 20: print("Clima agradable") else: print("Hace frío")

Acerca de este blog

  Acerca de este blog Este blog fue creado como parte del Proyecto del Tercer Parcial de la materia M1S3, con el objetivo de ayudar a...