Python3 assert(アサーション)

Document 对象参考手册Python3 エラーと例外

Python assert(アサーション)は式を検証するために使用され、式の条件が false のときに例外を発生させます。

アサーションは、プログラムを実行するための条件が満たされない場合に直接エラーを返すことができ、プログラムの実行後にクラッシュするまで待つ必要はありません。例えば、コードが Linux システムでのみ実行できる場合、現在のシステムが条件を満たしているかどうかを先に判断できます。

構文は次のとおりです:

assert expression

次と同等です:

if not expression:
    raise AssertionError

assert の後にパラメータを続けることもできます:

assert expression [, arguments]

次と同等です:

if not expression:
    raise AssertionError(arguments)

以下は assert の使用例です:

>>> assert True     # 条件が true の場合、正常に実行
>>> assert False    # 条件が false の場合、例外が発生
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AssertionError
>>> assert 1==1    # 条件が true の場合、正常に実行
>>> assert 1==2    # 条件が false の場合、例外が発生
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AssertionError

>>> assert 1==2, '1 は 2 に等しくない'
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AssertionError: 1等しくない2
>>>

以下の例では、現在のシステムが Linux であるかどうかを判定し、条件を満たさない場合は直接例外を発生させ、次のコードを実行する必要はありません。

サンプル

import sys
assert ('linux' in sys.platform), "このコードは Linux でのみ実行できます"

# 次に実行するコード

Document 对象参考手册Python3 エラーと例外

その他の拡張