码迷,mamicode.com
首页 > 编程语言 > 详细

python之异常处理

时间:2018-10-31 12:42:36      阅读:174      评论:0      收藏:0      [点我收藏+]

标签:调试   技术   顺序   sse   报错   导致   影响   pytho   ace   

一 什么是异常

异常即是一个事件,该事件会在程序执行过程中发生,影响了程序的正常执行。
一般情况下,在Python无法正常处理程序时就会发生一个异常。
异常是Python对象,表示一个错误。
当Python脚本发生异常时我们需要捕获处理它,否则程序会终止执行。

二 异常类型:

python提供了两个非常重要的功能来处理python程序在运行中出现的异常和错误。你可以使用该功能来调试python程序。
异常处理: 本站Python教程会具体介绍。
断言(Assertions):本站Python教程会具体介绍。
技术分享图片
技术分享图片
技术分享图片

三 异常处理

异常处理可用于当不知道程序是否报错的环境,一般的,当程序报错后就会停止运行,而当使用异常处理机制时其异常不会导致程序的终止,而是会是程序按顺序向下执行。

1 当没有定义变量a时

抛出NameError 的异常
技术分享图片

2 当使用try 进行尝试执行

使用except 进行捕获异常时,其不会报错,as 表示将异常重命名。
技术分享图片

3 当存在两个错误时

try 默认只执行第一个错误,若第一个错误没有捕获到异常时,将会报错,并且下面的语句将不再执行。
技术分享图片
当有异常时,except会一个接一个的捕获,当直到最后如果没有捕获到异常,则报错
技术分享图片
技术分享图片

4 当异常不再捕获范围内时

则报错,不执行下面的语句
技术分享图片
缺点: 当其异常不再try 的第一个异常时,则不能被匹配且不会被执行,此时可使用finally:

5 finally

是必须被执行的语句
技术分享图片

6 Exception 异常

属于所有异常的父类,当使用此异常捕获时,所有的异常都在其范围内,因此不会报错
技术分享图片

7 抛出异常:

当执行不存在的异常时,需要使用类进行构造并使用
技术分享图片

四 总结:

需要捕获异常的代码块,必须执行,如遇到异常,跳转到except语句。
如果异常能被except后面的error捕获,则执行except语句的内容,然后执行finally。
如果异常不能被except后面的erro捕获,则直接执行finally里面的内容。

python之异常处理

标签:调试   技术   顺序   sse   报错   导致   影响   pytho   ace   

原文地址:http://blog.51cto.com/11233559/2311025

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!