Python 这个异常是如何工作的?
我想知道执行此函数时为什么不打印Python 这个异常是如何工作的?,python,python-2.7,exception-handling,Python,Python 2.7,Exception Handling,我想知道执行此函数时为什么不打印0: def zeroDivision(): try: try: raise Exception("0") finally: result = 5/0 except Exception, e: print e 我期望: >>> zeroDivision() 0 intege
0
:
def zeroDivision():
try:
try:
raise Exception("0")
finally:
result = 5/0
except Exception, e:
print e
我期望:
>>> zeroDivision()
0
integer division or modulo by zero
但我得到的却是:
>>> zeroDivision()
integer division or modulo by zero
如果finally
子句引发另一个异常[在本例中为5/0
]或执行返回或中断语句,则保存的异常[在本例中为异常(“0”)
]将被丢弃
可能与好旧
try有关:返回x;最后:返回y
可能重复的