python的异常处理

Python013

python的异常处理,第1张

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

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

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

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

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

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

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

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

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

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

python(unsubscriptable object异常),是设置错误造成的,解决方法如下;

1、首先创建一个py文件,输入“for i in range(10):y=1if i==5:y=0i=i/yprint(i)”代码,如下图所示。

2、运行py文件,可以看到程序运行到i等于5的时候出现了分母为0的异常,程序中断不继续执行,如下图所示。

3、这时将可能出现异常的代码添加try...except...语句,代码如下图。

4、运行py文件,可以看到python已经跳过异常继续执行了,如下图所示。

5、如果是函数调用可能出现异常的话,可以在函数外面使用try...except...语句,这样程序出现异常了,可以继续执行。

说明

1、程序可以通过创建一个新的异常类来命名它们自己的异常。异常应该是典型的继承自Exception类,直接或间接的方式。

2、异常python有一个大基类,继承了Exception。因此,我们的定制类也必须继承Exception。

实例

知识点扩展:

自定义异常类型

捕捉用户手动抛出的异常

以上就是python用户自定义异常的实例讲解的详细内容。