Python3 assert (aserción)

Document 对象参考手册Errores y excepciones de Python3

Python assert (aserción) se utiliza para evaluar una expresión, y cuando la condición de la expresión es false, se desencadena una excepción.

La aserción puede devolver un error directamente cuando la condición no cumple con la ejecución del programa, sin tener que esperar a que el programa se bloquee después de ejecutarse. Por ejemplo, si nuestro código solo puede ejecutarse en el sistema Linux, podemos primero comprobar si el sistema actual cumple la condición.

El formato de sintaxis es el siguiente:

assert expression

Equivale a:

if not expression:
    raise AssertionError

También se pueden agregar parámetros después de assert:

assert expression [, arguments]

Equivale a:

if not expression:
    raise AssertionError(arguments)

El siguiente es un ejemplo de uso de assert:

>>> assert True     # Si la condición es true, se ejecuta normalmente
>>> assert False    # Si la condición es false, se lanza una excepción
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AssertionError
>>> assert 1==1    # Si la condición es true, se ejecuta normalmente
>>> assert 1==2    # Si la condición es false, se lanza una excepción
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AssertionError

>>> assert 1==2, '1 no es igual a 2'
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AssertionError: 1no es igual2
>>>

El siguiente ejemplo comprueba si el sistema actual es Linux; si no se cumple la condición, se lanza una excepción directamente, sin necesidad de ejecutar el código siguiente:

Ejemplo

import sys
assert ('linux' in sys.platform), "Este código solo puede ejecutarse en Linux"

# Código que se ejecutará a continuación

Document 对象参考手册Errores y excepciones de Python3

Otras extensiones