异常
try/except 与C,java等语言用try/catch来捕获异常相似,Python使用try/excepttry/except/finally 无论是否有异常都会执行finally下的语句try/except/else 没有抛出异常时执行else下的语句代码
try: f = open(‘data.txt‘) f.read() print zz print 5/0 except IOError, e: # 捕获IO异常,变量e接收具体的错误信息 print e except NameError, e: # 捕获名字异常 print e except Exception, e: # 捕获剩下的其他异常 print e else: # 没有异常时执行 print ‘no error‘ finally: # 无论有无异常都会执行的内容 print ‘do anyway‘
raise 抛出一个异常代码
def error_fun(): raise Exception(‘it is an error function‘) # 抛出一个通用异常Exception # 捕获上面的异常 try: error_fun() execept Exception, e: print e
通过继承异常类,就可以自定义异常。最常见的就是直接继承自Exception类。
# 自定义异常 class MyException(Exception): def __init__(self, arg, arg2): Exception.__init__(self, arg) self.arg2 = arg2 # 捕获 try: raise MyException(‘abc‘, 10) except MyException, e: print e, e.arg2
Exception 基础异常ZeroDivisionError 除数为0异常OverflowError 内存溢出ImportError 导入模块异常NameError 没有声明对象RuntimeError 一般运行时异常NotImplementedError 未实现方法SyntaxError 语法错误IOError IO操作异常

本站文章为 宝宝巴士 SD.Team 原创,转载务必在明显处注明:(作者官方网站: 宝宝巴士 )
转载自【宝宝巴士SuperDo团队】 原文链接: http://www.cnblogs.com/superdo/p/4581764.html
原文:http://www.cnblogs.com/superdo/p/4581764.html