Python笔记——异常处理

Python笔记——异常处理

捕获异常

 

try:

   <语句>

except <异常名1>:

   <语句>

except <异常名2>:

   <语句>

else:

   <语句>

 

 

另一种形式,不包含exceptelse语句

 

try:

  <语句>

finally:

  <语句>

 

eg.

 

 

 

常见的异常:

AttributeError 调用不存在的方法引发的异常

EOFError 遇到文件末尾引发的异常

ImportError 导入模块出错引发的异常

IndexError 列表月越界引发的异常

IOError I/O操作引发的异常,如打开文件出错等

KeyError 使用字典中不存在的关键字引发的异常

NameError 使用不存在的变量名引发的异常

TabError 语句块缩进不正确引发的异常

ValueError 搜索列表中不存在值引发的异常

ZeroDivisionError 除数为零引发的异常

 

 

eg.

try:

  l[2]/0

except IndexError:

  print('IndexError')

except ZeroDivisionError:

  print('ZeroDivisionError')

else:

  print 'no error'

 

 

 

多重异常的处理

可以在try语句中嵌套另一个try语句

一旦发生异常,python匹配最近的except语句,

若是内部except能够处理该异常,则外围try语句不会捕获异常。

若是不能,或者忽略,外围try处理

 

引发异常

python中可以通过raise语句手工引发异常,并向异常传递数据

使用raise可以定义新的错误类型,以适应脚本的需要

 

格式:

raise 异常名

raise 类名(异常信息)

 

 

捕获时:

 except MyException as e:

      print(e)  #将打印出异常信息

 

以上两段程序运行结果:

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值