logo

Pitón | Error de afirmación

Error de afirmación
La aserción es un concepto de programación que se utiliza al escribir un código donde el usuario declara que una condición es verdadera usando afirmar declaración antes de ejecutar el módulo. Si la condición es Verdadero , el control simplemente pasa a la siguiente línea de código. En caso de que sea FALSO el programa deja de ejecutarse y regresa Error de afirmación Excepción.

la función de afirmar La declaración es la misma independientemente del lenguaje en el que se implemente, es un concepto independiente del lenguaje, solo la sintaxis varía con el lenguaje de programación.



Sintaxis de afirmación:
afirmar condición, error_message (opcional)

Ejemplo 1: error de afirmación con mensaje_error.



Python3






# AssertionError with error_message.> x>=> 1> y>=> 0> assert> y !>=> 0>,>'Invalid Operation'> # denominator can't be 0> print>(x>/> y)>

>

sitios como coomeet
>

Producción :

Traceback (most recent call last): File '/home/bafc2f900d9791144fbf59f477cd4059.py', line 4, in assert y!=0, 'Invalid Operation' # denominator can't be 0 AssertionError: Invalid Operation>

El controlador de excepciones predeterminado en Python imprimirá el mensaje de error escrito por el programador o simplemente manejará el error sin ningún mensaje.
Ambas formas son válidas.

Manejo de la excepción AssertionError:
Error de afirmación se hereda de la clase Exception, cuando ocurre esta excepción y genera AssertionError, hay dos formas de manejarla, ya sea el usuario o el manejador de excepciones predeterminado.
En el Ejemplo 1 hemos visto cómo funciona el controlador de excepciones predeterminado.
Ahora profundicemos en cómo manejarlo manualmente.

Ejemplo 2

Python3


león comparado con un tigre



# Handling it manually> try>:> >x>=> 1> >y>=> 0> >assert> y !>=> 0>,>'Invalid Operation'> >print>(x>/> y)> # the errror_message provided by the user gets printed> except> AssertionError as msg:> >print>(msg)>

>

>

iterando un mapa en java

Producción :

Invalid Operation>

Aplicaciones prácticas.
Ejemplo 3: Probar un programa.

Python3




# Roots of a quadratic equation> import> math> def> ShridharAcharya(a, b, c):> >try>:> >assert> a !>=> 0>,>'Not a quadratic equation as coefficient of x ^ 2 can't be 0'> >D>=> (b>*> b>-> 4> *> a>*>c)> >assert> D>>=> 0>,>'Roots are imaginary'> >r1>=> (>->b>+> math.sqrt(D))>/>(>2> *> a)> >r2>=> (>->b>-> math.sqrt(D))>/>(>2> *> a)> >print>(>'Roots of the quadratic equation are :'>, r1, '', r2)> >except> AssertionError as msg:> >print>(msg)> ShridharAcharya(>->1>,>5>,>->6>)> ShridharAcharya(>1>,>1>,>6>)> ShridharAcharya(>2>,>12>,>18>)>

>

>

Producción :

Roots of the quadratic equation are : 2.0 3.0 Roots are imaginary Roots of the quadratic equation are : -3.0 -3.0>

Este es un ejemplo para mostrar cómo esta excepción detiene la ejecución del programa tan pronto como la condición de afirmación es Falsa.

Otras aplicaciones útiles:

  • Comprobación de valores de parámetros.
  • Comprobando entrada/tipo válido.
  • Detectar abuso de una interfaz por parte de otro programador.
  • Comprobando la salida de una función.