Saltar a contenido

Ejercicios « Errores y excepciones

Ejercicio 1

Localiza el error en el siguiente bloque de código. Crea una excepción para evitar que el programa se bloquee y además explica en un mensaje al usuario la causa y/o solución:

Note

resultado = 10/0
try:
    resultado = 10/0
except ZeroDivisionError:
    print("Error:\tNo es posible dividir entre cero,\n" 
        "\tdebes introducir un número distinto.")
Error:  No es posible dividir entre cero,
        debes introducir un número distinto.

Ejercicio 2

Localiza el error en el siguiente bloque de código. Crea una excepción para evitar que el programa se bloquee y además explica en un mensaje al usuario la causa y/o solución:

Note

lista = [1, 2, 3, 4, 5]
lista[10]
lista = [1, 2, 3, 4, 5]
try:
    lista[10]
except IndexError:
    print("Error:\tEl índice se encuentra fuera del rango,\n"
          "\tdebes utilizar un número mayor o igual que cero\n"
          "\ty menor que la longitud de la lista.")
Error:  El índice se encuentra fuera del rango,
        debes utilizar un número mayor o igual que cero
        y menor que la longitud de la lista.

Ejercicio 3

Localiza el error en el siguiente bloque de código. Crea una excepción para evitar que el programa se bloquee y además explica en un mensaje al usuario la causa y/o solución:

Note

colores = { 'rojo':'red', 'verde':'green', 'negro':'black' } 
colores['blanco']
colores = { 'rojo':'red', 'verde':'green', 'negro':'black' } 
try:
    colores['blanco']
except KeyError:
    print("Error:\tLa clave del diccionario no se encuentra,\n"
          "\tdebes probar con otra que sí exista.")
Error:  La clave del diccionario no se encuentra,
        debes probar con otra que  exista.

Ejercicio 4

Localiza el error en el siguiente bloque de código. Crea una excepción para evitar que el programa se bloquee y además explica en un mensaje al usuario la causa y/o solución:

Note

resultado = 15 + "20"
try:
    resultado = "20" + 15
except TypeError:
    print("Error:\tSólo es posible sumar datos del mismo tipo,\n"
          "\tdebes transformar el número a cadena o viceversa.")
Error:  Sólo es posible sumar datos del mismo tipo,
        debes transformar el número a cadena o viceversa.

Ejercicio 5

Realiza una función llamada agregar_una_vez(lista, el) que reciba una lista y un elemento. La función debe añadir el elemento al final de la lista con la condición de no repetir ningún elemento. Además si este elemento ya se encuentra en la lista se debe invocar un error de tipo ValueError que debes capturar y mostrar este mensaje en su lugar:

Note

Error: Imposible añadir elementos duplicados => [elemento].

Cuando tengas la función intenta añadir los siguiente valores a la lista 10, -2, "Hola" y luego muestra su contenido.

Sugerencia

Puedes utilizar la sintaxis "elemento in lista"

Note

elementos = [1, 5, -2]

# Completa el ejercicio aquí
elementos = [1, 5, -2]

# Completa el ejercicio aquí
def agregar_una_vez(lista, el):
    try:
        if el in lista:
            raise ValueError
        else:
            lista.append(el)
    except ValueError:
        print("Error: Imposible añadir elementos duplicados =>", el)

agregar_una_vez(elementos, 10)
agregar_una_vez(elementos, -2)
agregar_una_vez(elementos, "Hola")

print(elementos)
Error: Imposible añadir elementos duplicados => -2
[1, 5, -2, 10, 'Hola']

Última edición: 26 de Septiembre de 2018