Mostrando entradas con la etiqueta validaciones. Mostrar todas las entradas
Mostrando entradas con la etiqueta validaciones. Mostrar todas las entradas

domingo, 29 de junio de 2025

馃И Python Nivel 2 – Parte 11: Pruebas con assert y Manejo Profesional de Errores

 

馃幆 ¿Qu茅 aprender谩s en esta parte?

✅ Qu茅 es una prueba con assert y c贸mo usarla
✅ C贸mo detectar errores desde el desarrollo
✅ C贸mo crear pruebas simples sin librer铆as externas
✅ C贸mo capturar errores personalizados y mantener controlado tu c贸digo


馃П ¿Qu茅 es assert?

assert es una instrucci贸n que permite verificar condiciones durante la ejecuci贸n.
Si la condici贸n no se cumple, lanza una excepci贸n (AssertionError) y detiene el programa.


馃攳 Ejemplo b谩sico:


def dividir(a, b): assert b != 0, "El divisor no puede ser cero" return a / b print(dividir(10, 2)) # 5.0 print(dividir(10, 0)) # AssertionError

✅ Ventajas de usar assert

✔️ Detecta errores temprano
✔️ Mejora la confiabilidad del c贸digo
✔️ Facilita pruebas durante el desarrollo
✔️ Se puede desactivar al ejecutar con python -O


馃攼 Personalizar errores con try-except

Adem谩s de assert, Python permite manejar errores sin que el programa se detenga abruptamente:


try: resultado = dividir(10, 0) except AssertionError as e: print("Error capturado:", e)

馃‍馃捇 Ejemplo pr谩ctico: validar emails


def registrar_usuario(nombre, email): assert "@" in email, "El email no es v谩lido" return {"nombre": nombre, "email": email} usuario = registrar_usuario("Ana", "ana@correo.com") print(usuario)

馃И Uso combinado con bucles o inputs


while True: edad = input("Introduce tu edad: ") try: edad = int(edad) assert edad > 0, "La edad debe ser positiva" break except (ValueError, AssertionError) as e: print(f"❌ Error: {e}")

馃 ¿Qu茅 aprendiste hoy?

✔️ C贸mo usar assert para validar condiciones
✔️ C贸mo capturar errores sin romper el programa
✔️ C贸mo detectar errores durante el desarrollo
✔️ C贸mo crear validaciones m谩s limpias y robustas


馃搨 C贸digo de ejemplos en GitHub:
github.com/josecodetech

馃帴 Video explicativo en YouTube:
https://www.youtube.com/watch?v=ccWUUSFZKRk