Python(4)--异常捕获及处理
2018-01-10 09:18
267 查看
异常
异常即非正常状态,在Python中使用异常对象来表示异常。若程序在编译或运行过程中发生错误,程序的执行过程就会发生改变,抛出异常对象,程序流进入异常处理。如果异常对象没有被处理或捕捉,程序就会执行回溯(Traceback)来终止程序。
捕获异常try...except...else...finally
def sum(num1,num2): num3=None try: #num3 = num1/num2 #sum(2,'ssss')打印ssssssss和'+++++++++++++' num3=int(num1)/int(num2) #sum(2,'ssss')打印999999999和'+++++++++++++' except ZeroDivisionError,ex: print '00000000' except TypeError: print 'ssssssss' except Exception,ex: print '99999999' else: print 'REsss' finally: print '+++++++++++++' return num3 #sum(2,0) #sum(2,'ssss') sum(2,1)
try的工作原理:
执行一个try语句时,python解析器会在当前程序流的上下文中作标记,当出现异常后,程序流能够根据上下文的标记回到标记位,从而避免终止程序。
1、如果try语句执行发生异常,程序流跳回标记位,并向下匹配执行第一个与该异常匹配的except子句,异常处理完后,程序流就通过整个try语句(除非在处理异常时引发新的异常)
2、如果没有找到except子句或指定同样异常类型Exception,来捕获所有异常,异常被递交到上层的try,实在没有找到时,程序将结束,并打印缺省的错误信息。
3、若没有发生异常,执行else语句
4、无论发生异常与否,均执行fianlly语句
相关文章推荐
- Python中处理unchecked未捕获异常实例
- Python异常捕获与处理
- python中的异常捕获处理机制(try...except...等语句)
- Python异常信息的捕获和处理
- 处理Python未捕获异常
- Python中处理unchecked未捕获异常实例
- Python 异常处理--raise函数用法
- Python爬虫入门五之URLError异常处理
- python 异常处理逻辑
- python基础之try异常处理、socket套接字基础part1
- python语法31[异常处理]
- PHP学习系列之错误处理和异常捕获
- Python_18_异常处理
- Android如何处理未捕获异常
- Python网络爬虫(四)-----异常处理
- Python3 的异常处理
- 异常的捕获与处理
- c++异常处理,异常声明,捕获异常
- 【脚本语言系列】关于Python基础知识异常处理,你需要知道的事
- python异常处理流程