Python中不盡如人意的斷言Assertion
Python Assert 為何不盡如人意
Python中的斷言用起來非常簡單,你可以在assert后面跟上任意判斷條件,如果斷言失敗則會(huì)拋出異常。
>>> assert 1 + 1 == 2 >>> assert isinstance('Hello', str) >>> assert isinstance('Hello', int)
Traceback (most recent call last):
File "<input>", line 1, in <module> AssertionError
其實(shí)assert看上去不錯(cuò),然而用起來并不爽。就比如有人告訴你程序錯(cuò)了,但是不告訴哪里錯(cuò)了。很多時(shí)候這樣的assert還不如不寫,寫了我就想罵娘。直接拋一個(gè)異常來得更痛快一些。
改進(jìn)方案 #1
一個(gè)稍微改進(jìn)一丟丟的方案就是把必要的信息也放到assert語句后面,比