作者CMJ0121 (请多指教!!)
看板Python
标题[问题] exception的疑问
时间Sat Jul 31 00:37:57 2010
现在我在做一个bot的程式
但是我不太懂exception... 卡住了
我的程式有两部份
class BBS(Thread):
def run(self): # thread: loop for recv message
def kill(self): # kill thread and raise an Excetpion
...
这部份是建立一个BBS class 可以自动处理我要的资讯
其中 run是一个thread 用来 recv socket from target
作法是一个 while loop 条件设在BBS里面
kill是当满足某些条件後会执行
会把run()中的while loop的条件改为否
并且丢出一个exception: raise Exception('BBS Kill')
以及主程式
app = BBS()
try:
# opeartion of app
...
except NameError: # first create app
app = BBS()
...
exception Exception: # catch an excetpion raise by BBS
del app
app = BBS()
...
我的 NameError exception有正常的catch到
但是後面那个 Exception却没有抓到
他会显示出 Exception: BBS Kill
这代表我自定义的exception做错了吗!?
还是我没有正确的抓到??
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.114.210.81
1F:推 liangjr:exception里面raise的exception不会被後面的抓到 07/31 06:54
2F:→ liangjr:要在try...except NameError外面包一层try...except Excep 07/31 06:55
3F:→ liangjr:tion 07/31 06:55
4F:→ CMJ0121:thx a lot~ 08/01 22:15