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

domingo, 8 de febrero de 2026

Control de excepciones

 馃挜 ¿Tu programa de Python "explota" y se cierra cuando el usuario mete un dato incorrecto? ¡Qu茅 rabia!


Te ense帽o a ponerle una RED DE SEGURIDAD a tu c贸digo.
馃暩️ Aprende a usar try, except y finally para que tus aplicaciones sean profesionales y a prueba de fallos.

Cap铆tulo 9 馃憞https://youtu.be/uE8C2xkbHRw




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

s谩bado, 16 de febrero de 2019

54 Python. Excepciones

Creamos una funcion a la que le pasamos 2 parametros, dentro de ella calculamos la division para imprimir su resultado, teniendo en cuenta los posibles errores al dividir por 0 o si introducimos texto en vez de numero.
Se llama a la funcion con distintos parametros para comprobar los errores que puedan suceder.

def divide(num1,num2):
    try:
        print('resultado')
        print(num1/num2)
    except ZeroDivisionError:
        print('No se puede dividir por 0')
    except Exception as e:
        print('error:')
        print(type(e).__name__)
divide(9,0)
divide(6,'dfg#')
divide(4,2)

martes, 21 de noviembre de 2017

16 Python. Calculadora simple

Vemos como crear una calculadora simple con Python, usando lo que hemos aprendido en videos anteriores y capturando el error de division por 0.





#CALCULADORA
#FUNCION MENU
def menu():
    print("Selecciona la operacion (1,2,3,4)")
    print("1. Suma")
    print("2. Resta")
    print("3. Multiplicacion")
    print("4. Division")
    opcion=int(input())
    return opcion
#FUNCION RESULTADO
def dameResultado(seleccion):
    operador1=int(input("Dime el primer numero "))
    operador2=int(input("Dime el segundo numero "))
    if(seleccion==1):
        resultado=operador1+operador2
    elif(seleccion==2):
        resultado=operador1-operador2
    elif(seleccion==3):
        resultado=operador1*operador2
    else:
        #CONTROLAMOS DIVISION POR CERO
        try:
            resultado=operador1/operador2
        except ZeroDivisionError: #podemos obviar la especificacion del error
            resultado=0
        finally:
            print("division realizada")
    return resultado
#PROGRAMA PRINCIPAL
continua=True
while(continua):
    seleccion=menu()
    resultado=dameResultado(seleccion)
    print(str(resultado))
    print("Quieres continuar (s/n)? ")
    if(input()=="s" or input()=="S"):
        continua=True
    else:
        continua=False
        print("Fin del programa")