|Encadena excepciones con raise X from YMedio
Ejercicio00:00

¿Quieres un reto mayor?

Resuelve en 10:00

info

Importante: Para que se registre el resultado tienes que iniciar sesión.

Encadena excepciones con raise X from Y

Medio10 pts·Funciones
ruleRestricciones
  • radio_button_unchecked
    Encadena con raise ProcessingError from

Enunciado

Implementa la clase ProcessingError (hereda de Exception) y la función chain_exceptions(value).

chain_exceptions(value) debe:

  1. Intentar convertir value a entero con int(value).
  2. Si falla, capturar la excepción original y re-lanzar un ProcessingError("no se pudo procesar el valor") usando raise ... from ... para preservar la causa.
  3. Si la conversión es exitosa, retornar {"result": valor_entero, "chained": False}.
  4. La función debe capturar ProcessingError en un try exterior y retornar {"chained": True, "cause": type(e.__cause__).__name__}.
chain_exceptions("42")    # {"result": 42, "chained": False}
chain_exceptions("abc")   # {"chained": True, "cause": "ValueError"}
chain_exceptions(None)    # {"chained": True, "cause": "TypeError"}
Restriccionesexpand_more
  • Dificultad: Medio
  • Completa todos los test cases para obtener los 10 puntos.
  • No modificar la línea export al final del archivo.
  • Se recomienda evitar el uso de inteligencia artificial para que realmente tú practiques los ejercicios.

Puedes usar print() para depurar. Los resultados aparecen en la Consola de salida, no en el navegador.

Inicia sesión para reaccionar
Inicia sesión para reaccionar
Encadena excepciones con raise X from Y — Medio | Coding Challenges · Coding Challenges