この記事では、Python Assert の使い方 (コード付き) を紹介します。一定の参考価値があります。困っている友人は参考にしてください。お役に立てれば幸いです。
pythonassert 文形式と使い方は非常にシンプルです。通常、プログラムは実行後に例外をスローします。例外が発生したコードで実行を直接終了するには、assert を使用します。プログラムの実行が完了するのを待つ代わりに、例外がスローされます。
pythonassert の役割
pythonassert 例外が発生した場合、式は false になります。式の戻り値が false の場合に例外がトリガーされることがわかります。
assert ステートメントの構文形式
assert expression [, arguments] assert 表达式 [, 参数]
補足:assert は次の目的にも使用できます。複数の式 式: 式 1、式 2 をアサートします。
注: 式 = false の場合、それに続く例外が実行されます。
いくつかの例を見てみましょう
1: 単一の式:
a = 1assert a < 0, '出错了,a大于0 啊' print('这里不会输出')
出力:
Traceback (most recent call last): File "main.py", line 3, in <module> assert a < 0, '出错了,a大于0 啊' AssertionError: 出错了,a大于0 啊
2: 複数の式:
a = 1 b = -1 assert a > 0, b < 0 print('正常输出,表达式返回真了') # 输出:正常输出,表达式返回真了
3: アサート例外をキャプチャしようとします:
import traceback try: assert a < 0 except AssertionError as aeeor: # 明确抛出此异常 # 抛出 AssertionError 不含任何信息,所以无法通过 aeeor.__str__()获取异常描述 print('AssertionError', aeeor, aeeor.__str__()) # 通过 traceback 打印详细异常信息 print('traceback 打印异常') traceback.print_exc() except: # 不会命中其他异常 print('assert except') try: raise AssertionError('测试 raise AssertionError') except AssertionError as aeeor: print('raise AssertionError 异常', aeeor.__str__())
出力:
AssertionError traceback 打印异常 Traceback (most recent call last): File "main.py", line 7, in <module> assert a < 0 AssertionError raise AssertionError 异常 测试 raise AssertionError
4: 関数呼び出しにより例外がスローされました:
# 除法运算 def foo(value, divide): assert divide != 0 return value / divide print('4除以2 =', foo(4, 2)) # 执行成功 print('4除以0 =', foo(4, 0)) # 抛出异常
出力:
4除以2 = 2.0 Traceback (most recent call last): File "main.py", line 8, in <module> print('4除以0 =', foo(4, 0)) # 抛出异常 File "main.py", line 3, in foo assert divide != 0 AssertionError
上記の例を通して、誰もが aseert の使用法を深く理解できたと思います。
概要: 式が false を返す場合。例外を直接スローして実行を終了し、実行を継続します。
【関連する推奨事項: Python ビデオ チュートリアル ]
以上がPython Assertの使い方入門(コード付き)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。