Capítulo 35. Objetos de excepción

Este trabajo se ha traducido utilizando IA. Agradecemos tus opiniones y comentarios: translation-feedback@oreilly.com

Hasta ahora, he sido deliberadamente vago sobre lo que es realmente una excepción. Como se sugirió en el capítulo anterior, a partir de Python 2.6 y 3.0, tanto las excepciones incorporadas como las definidas por el usuario se identifican en mediante objetos de instancia de clase. Esto es lo que se levanta y propaga a lo largo del procesamiento de excepciones, y la fuente de la clase se compara con las excepciones nombradas en las sentencias try.

Aunque esto significa que debes utilizar la programación orientada a objetos para definir nuevas excepciones en tus programas -e introduce una dependencia de conocimientos que aplaza la cobertura completa de las excepciones a esta parte del libro-, basar las excepciones en las clases y la programación orientada a objetos ofrece una serie de ventajas. Entre ellas, las excepciones basadas en clases:

  • Pueden organizarse en categorías. Las excepciones codificadas como clases admiten cambios futuros al proporcionar categorías: añadir nuevas excepciones en el futuro no suele requerir cambios en las declaraciones try.

  • Tienen información de estado y comportamiento. Las clases de excepción nos proporcionan un lugar natural para almacenar información de contexto y herramientas para su uso en el gestor try: las instancias tienen acceso tanto a la información de estado adjunta como a los métodos invocables. ...

Get Aprender Python, 5ª Edición now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.