python 如何跳过异常继续执行

Python07

python 如何跳过异常继续执行,第1张

下面有两种解决方法,第一种是类似if..else..;另外一种是使用语句来实现继续执行;

方法一:使用try...except...语句,类似于if...else...,可以跳过异常继续执行程序,这是Python的优势

用法如下:

方法二:使用语句来继续执行;

拓展资料

异常处理特点:

1.在应用程序遇到异常情况(如被零除情况或内存不足警告)时,就会产生异常。

2.发生异常时,控制流立即跳转到关联的异常处理程序(如果存在)。

3.如果给定异常没有异常处理程序,则程序将停止执行,并显示一条错误信息。

4.可能导致异常的操作通过 try 关键字来执行。

5.异常处理程序是在异常发生时执行的代码块。在 C# 中,catch 关键字用于定义异常处理程序。

6.程序可以使用 throw 关键字显式地引发异常。

7.异常对象包含有关错误的详细信息,其中包括调用堆栈的状态以及有关错误的文本说明。

8.即使引发了异常,finally 块中的代码也会执行,从而使程序可以释放资源。

参考资料来源:百度百科:异常处理

可能触发异常产生的代码会放到try语句块里,而处理异常的代码会在except语句块里实现。例如:

我们可以使用三种方法来处理多个异常。

第一种方法需要把所有可能发生的异常放到一个元组里。像这样:

另外一种方式是对每个单独的异常在单独的except语句块中处理。我们想要多少个except语句块都可以:

最后一种方式会捕获 所有 异常:

注意,捕获所有异常可能会造成意外的结果,比如,通常我们使用CTRL+C来终止程序,但如果程序中捕获了所有异常,CTRL+C就无法终止程序了。

包裹到finally从句中的代码不管异常是否触发都将会被执行。这可以被用来在脚本执行之后做清理工作:

如果想在没有触发异常的时候执行一些代码,可以使用else从句。

有人也许问了:如果你只是想让一些代码在没有触发异常的情况下执行,为啥你不直接把代码放在try里面呢?回答是,那样的话这段代码中的任意异常都还是会被try捕获,而你并不一定想要那样。

else从句只会在没有异常的情况下执行,而且它会在finally语句之前执行。

放在try块内的语句是可能产生异常的代码,捕获异常本身就是防止程序中可能出现的错误,必须要顺序执行的代码不放在try块内就行了

try:

12/0

except Exception,e

print e

finally:

print "I'm pass"

或者为try except语句加上finally块,无论是否出现异常都会执行finally中的语句