Una excepción es un evento que surge durante la ejecución de un programa para terminar o cambiar el flujo normal de un programa. Un error, por ejemplo, plantea una excepción. Al igual que otros lenguajes de programación, Python contiene muchas excepciones incorporadas. Estas excepciones se plantean si se encuentra un error cuando se ejecuta el programa. El tipo de error determina qué excepción se debe elevar. Cuando se produce una excepción, el intérprete de Python verifica si la excepción se maneja; Si no, termina el programa. Este artículo explica las excepciones en Python a través de varios ejemplos.
Excepciones de Python incorporadas
Como se discutió anteriormente, Python tiene muchas excepciones incorporadas que se plantean cuando ocurre un error durante la ejecución de un programa. Cada excepción se deriva de una clase base de "excepción". Lo siguiente incluye algunas excepciones de Python incorporadas, junto con una breve descripción de cada tipo de excepción:
Excepción | Descripción |
---|---|
Excepción | Cada excepción se deriva de esta clase. |
Importador | Esta excepción se plantea cuando se importa un módulo específico y no se encuentra. |
Eoferror | Esta es la excepción de fin de archivo. Esta excepción ocurre cuando se alcanza el final del archivo. |
ZeroDivisionError | Esta excepción se plantea cuando un número se divide por cero. |
Keyerer | Esta excepción se plantea si se especifica o usa una cierta clave que no se define dentro de un diccionario. |
Índice | Esta excepción se eleva cuando se ha intentado el acceso a un índice de secuencia que no está en el rango. |
Flotante | Esta excepción se plantea cuando fallas una operación de punto flotante. |
Estas son algunas de las excepciones incorporadas en Python. Visite la documentación oficial para obtener más información sobre el uso de excepciones incorporadas en Python, ubicada en https: // docs.pitón.org/3/biblioteca/excepciones.html.
Uso de excepción en Python
Las excepciones en Python se manejan utilizando la declaración de prueba. El código que puede lanzar o plantear una excepción se implementa en un bloque de try. Al lado del bloque de try, se implementa un bloque excepto para manejar la excepción. En el bloque excepto, captamos la excepción y decidimos qué operación realizar cuando encontramos esa excepción particular. La sintaxis de escribir el intento y, excepto los bloques, es el siguiente:
intentar:Ahora, implementaremos un código simple en nuestro script de Python utilizando el try y excepto los bloques.
Aquí, imprimiremos una variable de 'nombre' que no está definida. Esto plantea una excepción en el bloque excepto.
#Implementar el bloque de tryProducción
Si no se produce excepción, solo se ejecuta el bloque de try. En el bloque excepto, se imprime una declaración de que se ha producido una excepción.
Veamos otro ejemplo en el que definimos la variable de nombre:
#Definiendo la variable de nombreProducción
En el ejemplo anterior, el bloque de try se ejecuta y el bloque excepto se omite porque el programa no plantea ninguna excepción. Podemos definir tantos excepto bloques en nuestro programa como queramos. Cada excepto bloque maneja un tipo específico de excepción.
#Implementar el bloque de tryProducción
En Python, la excepción es la clase base para todas las excepciones. En lugar de escribir el nombre de una excepción particular en el bloque excepto, simplemente podemos escribir "excepción" y atrapar cada tipo de excepción de esta manera.
#Implementar el bloque de tryProducción
El exp.__class__ Devuelve el nombre de la clase de excepción.
Del mismo modo, veamos un ejemplo de la clase "ZeroDivisionError".
#Implementar el bloque de tryProducción
El bloque delse
El bloque de lose se usa con los bloques de intento y de excepción. El bloque delse define un código que se ejecuta si el bloque de try se ejecuta correctamente y no se produce ningún error. A veces, es posible que deba imprimir un mensaje o realizar una función cuando el bloque de try se haya ejecutado correctamente. Por esta razón, podemos implementar el bloque de Else con el intento y excepto los bloques.
En este ejemplo, implementaremos el bloque más en nuestro script de Python.
#Implementar el bloque de tryProducción
El bloque de lose se ejecuta después de la ejecución exitosa del bloque de try.
Veamos ahora otro ejemplo usando el bloque de Else.
#Implementar el bloque de tryProducción
En el ejemplo anterior, la variable de nombre se define dentro del bloque de try y se imprime en el bloque de los demás.
El bloque finalmente
El finalmente El bloque contiene el código que debe ejecutarse independientemente de si el bloque de try plantea una excepción. El bloque Finalmente es opcional y se declara con el bloque de try. Por ejemplo, si hemos abierto un archivo de texto para leer el bloque de try y plantea un error o excepción, es mejor encerrar el archivo en el bloque finalmente, incluso si ocurre el error. Implementemos el bloque Finalmente en nuestro script de Python.
#Implementar el bloque de tryProducción
En la salida, se puede ver que el bloque de try plantea una excepción. Sin embargo, el bloque finalmente se ejecuta al final.
Ahora, abramos un archivo de texto en el bloque de prueba, que plantea una excepción mientras el archivo encerrado en el bloque finalmente.
#Implementar el bloque de tryProducción
Como puede ver, independientemente del error de valor, el archivo se ha cerrado con éxito dentro del bloque Finalmente.
Plantear una excepción
Aunque las excepciones se elevan automáticamente cuando ocurre un error, en Python, también puede aumentar las excepciones manualmente. El aumentar La palabra clave se usa para aumentar o lanzar la excepción.
Ahora aumentaremos algunas excepciones utilizando la palabra clave Rair. En el siguiente ejemplo, la condición IF se implementa para verificar los números no negativos. Si existen números no negativos, entonces se plantea la excepción "no se permiten números no negativos".
#Declarar dos variables numéricasProducción
Conclusión
Se produce una excepción en respuesta a un error en el tiempo de ejecución. En Python, podemos manejar excepciones utilizando el try y excepto los bloques. Este artículo explicó cómo usar excepciones en Python a través de varios ejemplos.