Pythonのassert
文は、コードの中で条件をテストするデバッグ支援ツールです。この構文は次のようになっています。
assert 条件式, 条件式がfalseになったときに出力するメッセージ
条件式が「false」の場合には例外「AssertionError」が起きます。「true」の場合には何も起きずに次の命令を実行します。
Pythonではテストを行うためのクラス「unittest」が用意されていますが、unittest
を使用するよりもassert
文を使用する方が簡単にテストを行うことができます。assert
文を使うことで、少しでも想定外の動作をした場合にすぐにエラーを出力してプログラムを終了させることができます。
以下にassert
文の基本的な使い方を示します。
# Trueの場合
assert True, '何も起きずに次の命令を実行'
# Falseの場合
assert False, 'error'
このように、assert
文を使用することで、プログラム中で想定と異なる振る舞いをしている場合に、すぐに気づくことができます。
また、assert
文は組み込み定数__debug__
がTrueのときだけ実行されます。Pythonスクリプト実行時のコマンドラインオプションに「-O」を付けると__debug__
が「False」になるのでassert
文が無効になります。
以上がPythonのassert
文の基本的な説明となります。この情報がPythonのデバッグやテストに役立つことを願っています。