大家都知道python有很强大的异常处理机制,但是每次都要指定这个异常类型,感觉好不麻烦...、
以下用四个例子说明一下,被除数为0的异常。
示例一:
File "", line 1, in
1/0
>>> 1/0
Traceback (most recent call last):
ZeroDivisionError: integer division or modulo by zero
【释】pythonIDE抛出异常。
示例二:
>>> try:
1/0
except ZeroDivisionError:
print '
integer division or modulo by zero...'
integer division or modulo by zero...
【释】自定义异常处理
实例三:
>>> try:
1/0
except:
for i in sys.exc_info():
print i
integer division or modulo by zero
【释】exc_info异常信息
示例四:
>>> import traceback
>>> try: 1/0
except:
for i in traceback.format_exception(sys.exc_info()[0],sys.exc_info()[1],sys.exc_info()[2]):
print i.replace('\n','').strip()
Traceback (most recent call last): #最近一次的异常
File "", line 1, in #异常所在的地址
ZeroDivisionError: integer division or modulo by zero #异常类型和信息
怎么样,跟pythonIDE的异常输出一样了吧?~当然,针对示例四可以特殊处理,自定义消息...自由发挥咯~
【注】:原创所有,转载请附本文链接,谢谢.
http://blog.sina.com.cn/s/blog_83dc494d0101bbob.html