Cómo crear y utilizar excepciones personalizadas en python

Python proporciona una gran cantidad de excepciones estándar que se deben utilizar siempre que sea posible. Estas excepciones son increíblemente flexible, e incluso se puede modificar según sea necesario (dentro de lo razonable) para satisfacer necesidades específicas.

Sin embargo, a veces simplemente hay que crear una excepción personalizada porque ninguna de las excepciones estándar funcionará. Tal vez el nombre de la excepción simplemente no le dice al espectador la finalidad de que la excepción sirve. Es posible que tenga una excepción personalizada para el trabajo de base de datos especializada o cuando se trabaja con un servicio.

Este ejemplo muestra un método rápido para crear sus propias excepciones. Para realizar esta tarea, debe crear una clase que utiliza una excepción existente como punto de partida. Para hacer las cosas un poco más fácil, este ejemplo se crea una excepción que se basa en la funcionalidad proporcionada por el ValueError excepción.

Video: Tutorial Python 29 - Excepciones

La ventaja de usar este método es que este enfoque le dice a cualquier persona que siga usted precisamente lo que la adición a la ValueError excepción es- además, se hace la excepción modificado más fácil de usar.

  1. Abrir una ventana de Python Archivo.

    Ves un editor en el que puede escribir el código de ejemplo.

  2. Escriba el siguiente código en la ventana - presione ENTRAR después de cada línea:

    CustomValueError clase (ValueError): def __init __ (self, arg): self.strerror = argself.args = {arg} tratar: aumentar CustomValueError ("El valor debe estar dentro de 1 y 10.") Excepto CustomValueError como e: print ("CustomValueError excepción!", E.strerror)

    En este ejemplo se coloca el mismo error en ambos strerror y args por lo que el desarrollador tiene acceso a cualquiera de los dos (como normalmente sucede).

    El código comienza con la creación del CustomValueError clase que utiliza la ValueError clase de excepción como punto de partida. los __en eso__() función proporciona los medios para crear una nueva instancia de esa clase. Piense en la clase como un plan y la instancia ya que el edificio creado a partir del modelo.

    Observe que el strerror atributo tiene el valor asignado directamente a ella, pero args lo recibe como una matriz. los args miembro normalmente contiene una matriz de todos los valores de excepción, por lo que este es un procedimiento estándar, incluso cuando args contiene un solo valor como lo hace ahora.

    El código para utilizar la excepción es considerablemente más fácil que modificar ValueError directamente. Todo lo que hacer es llamar aumento con el nombre de la excepción y los argumentos que desea pasar, todo en una línea.

  3. Seleccione Ejecutar → Módulo Run.

    Video: 30.- Curso Python - Excepciones

    Aparece una ventana abierta Python Shell. La aplicación muestra la secuencia de letras, junto con el número de letra.

Artículos Relacionados