python中异常处理

Posted 道法自然

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python中异常处理相关的知识,希望对你有一定的参考价值。

什么是异常?

异常是一个事件,该事件会在程序的执行中发生,影响程序的正常运行,一般情况下,在python无法正常处理程序时,就会发生异常。异常在python的对象中,就是一个错误。我们要捕获并处理异常,否则程序将会终止进行。

捕获异常的语法如下:

try:

<语句>  #运行别的代码

except <名字>:

<语句>   #如果在try部分发生了异常。

#-*-coding:UTF-8 -*-
def exp_execption(x,y):
   try:
      a=x/y
      print(a=,a)
      return a
   except Exception:
      print("程序执行异常,异常信息:被除数为0")
exp_execption(2,0)

Python 使用raise 语句抛出了一个指定异常。我们可以使用类(Exception的子类)或者实例参数调用raise语句引发异常。使用类时程序会自动创建实例

捕获多个异常

#-*-coding:UTF-8 -*-
def mult_execption(x,y):
   try:
      a=x/y
      b=name
   except ZeroDivisionError:
      print(this is ZeroDivisionError)
   except NameError:
      print("this is NameError")
mult_execption(2,0)

如果把a=x/y注释掉或者放到b=name下面,则得到的执行结果为:

this is NameError

捕捉对象:

如果希望在except子局中访问异常对象本身,也就是看到一个异常对象真正的异常信息,而不是输出自己定义的异常信息,可以使用as e 的形式,我们称之为捕捉对象

#-*-coding:UTF-8 -*-
def model_execption(x,y):
   try:
      b=name
      a=x/y
   except(ZeroDivisionError,NameError,TypeError) as e:
      print(e)
model_execption(2,0)
[[email protected] test]$ python3 d.py 
name name is not defined

 

以上是关于python中异常处理的主要内容,如果未能解决你的问题,请参考以下文章

使用片段中的处理程序时出现非法状态异常

你如何在 python 中处理 graphql 查询和片段?

Java异常处理机制

PCL异常处理:pcl 1.8.13rdpartyoostincludeoost-1_64oost ypeofmsvc ypeof_impl.hpp(125): error(代码片段

python常用代码片段总结

常用python日期日志获取内容循环的代码片段