😼

Python - assertionを使おう

2020/10/16に公開

(作成2020.10.16)

コードのくみ上げ方、私の場合。

これまではコーディングしていく過程で、「ちょっとこの変数に何が入っているのかみたい。」とか、「この変数の型ってどうなってるんだっけ?」とか、っていうときは、

main.py
some_value = 0
print(some_value)
raise

とやってraise文でエラーを発生させてた。このやり方ってどうもお行儀の悪い作法のようなんだけど、じゃあどうするのがスマートなの?っていうのがわからなくて。

assert を知る。

で、「Deep Learning with Python」っていう本の中のコードにassertっていうのを使っているところがあって、「あ、これかっこいいじゃん!」と思ったので、メモしておきます。

main.py
a = 1 
assert(a==1)
print("ok")

このコードを実行すると、

$ python3 main.py
ok

んでもって、変数に入っている値が期待した値と違った想定で、

main.py
a = 2
assert(a==1)
print("ok")

このコードを実行すると、

$ python3 main.py
Traceback (most recent call last):
  File "c:/Users/Hiyoyuki Ichijo/PycharmProjects/simeon/02/main.py", line 2, in <module>
    assert(a==1)
AssertionError

となってエラーになります。問題なければそのままプログラムの実行が進むので気持ちいいね。

Discussion