Boletín 205. Excepciones
En este boletín comenzaremos a tratar con excepciones: debes capturarlas hasta lanzarlas desde funciones.
Revisa el apartado Excepciones de la unidad.
Ejercicios
- Para cada función, realiza su documentación utilizando DocString.
- No debes implantar las anotaciones de tipos de las funciones. Tan solo se indica en los enunciados para documentar las funciones.
Ejercicio 1. Escribe un script en Python que solicite al usuario dos números y a continuación muestre el resultado de dividir el primer número por el segundo. Asegúrate de manejar las excepciones en el caso de que el usuario intente dividir entre cero o introduzca por teclado un valor que no sea un número. Para realizar esto deberás capturar las excepciones ZeroDivisionError y TypeError. Para cada una de las excepciones muestra un mensaje de error diferente:
- Cuando se capture la excepción
TypeErrormuestra por pantalla:Error: Entrada no válida, por favor introduce números.. - Cuando se capture la excepción
ZeroDivisionErrormuestra por pantalla:Error: No se puede dividir entre cero.
Ejercicio 2. Escribe un script en Python que pida al usuario un número entero positivo. Si el usuario introduce un valor incorrecto (es decir, un valor que no sea un número o no sea positivo), el programa debe volver a pedir el número hasta que el usuario introduzca un valor válido. Para finalizar el script muestra el número de veces que se intentó introducir un número hasta que este fuese un entero positivo.
Ejercicio 3. Escribe una función celsius_to_farenheit(celsius: float/int) -> float en un script en Python que convierta una temperatura de grados Celsius a Farenheit. Si el parámetro que se le pasa a la función no es un número, lanza la excepción TypeError y si siendo un número no es positivo, debe lanzar una excepción ValueError.
Ejercicio 4. Escribe una función raiz_cuadrada(numero: float/int) -> float en un script en Python que calcule la raíz cuadrada de un número. Lanza las excepciones TypeError y ValueError cuando sea necesario.
El propio script debe recibir un número por parte del usuario y calcular la raíz cuadrada de ese número utilizando la función creada anteriormente. Captura la excepción que lanza la función.
Ejercicio 5. Escribe una función calcular_descuento_irpf(sueldo_bruto: float/int, irpf: int) -> float en un script en Python con el sueldo bruto y el IRPF en tanto por ciento. Lanza las excepciones TypeError y ValueError cuando sea necesario.
El propio script deberá recibir estos datos por teclado, y utilizar la función creada para calcular el descuento del IRPF. Captura la excepción que lanza la función.