[问题] 关于设计程式运作流程的问题

楼主: Dong0129 (阿东跟上面讲的情况一样b)   2019-12-06 17:21:57
各位版友好,
最近在运用exception时遇到一个流程设计的问题,
假设我有3个函式,分别是a、b、c,
其中a会呼叫b和c,b会呼叫c
若是想做到只要有函式出现例外,整个程式就停止运作,
是否只能用判断式一一检查执行完的函式是否正常跑完呢?
还是有其他种作法呢?
如果只能用判断式一一检查被呼叫的函式执行结果,若a大量呼叫b和c,不就会充斥很多
判断式在a中吗?
附上范例...
#main.py
from test import test
if __name__=='__main__':
t=test()
t.test()
作者: sherees (ShaunTheSheep)   2019-12-06 17:37:00
你可以把try except写在b, c里面
作者: benson415 (沛行)   2019-12-06 19:43:00
如果要中断,何不raise error?
作者: stucode   2019-12-06 23:13:00
因为你 except 把例外拦下来了,想让它向外传播的话在最外层或你想处理例外的地方 try except 就好如果想在中间做些 logging 可以先拦下来再 re-raise
作者: benson415 (沛行)   2019-12-07 22:03:00
按照你的写法,印出来的确实是会这样没错。如果真的想中断又不大改的话就是直接在test3里面把except里的print(e)改成raise e

Links booklink

Contact Us: admin [ a t ] ucptt.com