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. ...