为了账号安全,请及时绑定邮箱和手机立即绑定

Python异常处理@2018-11-20

标签:
Java

webp

人生苦短,我用Python

Python异常处理

俗话说:常在河边走哪有不湿脚?编程中也常有异常情况出现,当异常出现如何处理?或是能否在异常出现之前,对可能出现的异常情况预先安排好应对策略?
python语言中的异常处理就是针对这种情况设计的。

Python异常处理

try :
    dosomething # 程序中可能出现异常的部分代码except (except-class1,except-class2...) as e: # 多个异常情况,可以元组的方式列出。或者也可以用多个except块分别处理不同的异常
    dosomething # 异常出现时的处理代码else:
    dosomething # 异常没有出现时执行的代码(**可选**)finally :
    dosomething # 无论异常是否出现都执行的代码块(**可选**)

Python内建异常类型

序号类名描述
1Exception所有异常的基类
2AttributeError特性引用或赋值失败时引用
3IOError试图打开不存在的文件(或其他I/O情况)时引发
4IndexError使用序列中不存在的索引时引发(越界)
5KeyError引用映射中不存在的键时引发
6NameError变量名引用错误时引发
7SyntaxError代码为错误形式时引发(语法错误)
8TypeError内建操作或函数应用于错误类型的对象时引发
9ValueError内建操作或函数应用于正确对象,但该对象使用不合适的值时引发
10ZeroDivistionError在除数为零的除法运算中引发

补充

  • raise 抛出异常。用于自行抛出异常或在捕捉到异常后抛出给后面的程序处理。
    raise 'Exception mession'

  • 自定义异常类。异常类可以自行定义,但定义时要确保从Exception类继承(直接或间接
    class someException(Exception) : pass

  • try代码块中调用的函数里引发异常,若函数中没有捕捉则异常会上浮至函数调用处,若仍未捕捉则继续上浮,直至主程序;若至此仍未被捕捉处理,则程序中止执行。



作者:默默而行
链接:https://www.jianshu.com/p/79022a1f9a88


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消