python异常处理try except过程解析


Posted in Python onFebruary 03, 2020

这篇文章主要介绍了python异常处理try except过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

某些时候我们能够预判程序可能会出现何种类型的错误,而此时我们希望程序继续执行而不是退出,此时就需要用到异常处理;下面是常用的几种异常处理方法

#通过实例属性 列表 字典构造对应的异常
class Human(object):
  def __init__(self, name, age, sex):
    self.name = name
    self.age = age
  def get_info(self):
    print("my name is %s,age is %s"%(self.name, self.age))
man1 = Human("李四", 22, "man")
list1 = [1, 2, 3]
dict1 = {"name":"张三", "age":12}

#异常捕获的语法
try:
  man1.get_info1()
except AttributeError as e: #AttributeError为错误类型,此种错误的类型赋值给变量e;当try与except之间的语句触发
# AttributeError错误时程序不会异常退出而是执行except AttributeError下面的内容
  print("this is a AttributeError:",e)
finally:
  print("this is finally")

try:
  man1.get_info()
  #list1[3]
  #dict1["sex"]
except AttributeError as e:
  print("this is a AttributeError:",e)
else:
  print("一切正常") #当try与except之间内容没有触发捕获异常也没有异常退出就会跳过except转到执行else下面的语句
finally:
  print("this is finally")#不论程序是否触发异常,只要没有退出都会执行finally下面的内容

try:
  list1[3]
  dict1["sex"]
except (IndexError, KeyError) as e: #当需要捕获多个异常在一条except时候可以使用这种语法,try与except之间语句触发任意一个异常捕获后就跳到except下面的语句继续执行
  print("this is a IndexError or KeyError:",e)

try:
  list1[3]
  dict1["sex"]
except IndexError as e:#当需要分开捕获多个异常可以使用多条except语句,try与except之间语句触发任意一个异常捕获后就跳到对应except执行其下面的语句,其余except不在继续执行
  print("this is a IndexError:",e)
except KeyError as e:
  print("this is a KeyError:",e)

try:
  man1.get_info1()
except IndexError as e:
  print("this is a IndexError:",e)
except Exception as e:
  print("this is a OtherError:",e)#可以使用except Exception来捕获绝大部分异常而不必将错误类型显式全部写出来

#自己定义异常
class Test_Exception(Exception):
  def __init__(self, message):
    self.message = message
try:
  man1.get_info()
  raise Test_Exception("自定义错误")#自己定义的错误需要在try与except之间手工触发,错误内容为实例化传入的参数
except Test_Exception as e:
  print(e)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python使用cStringIO实现临时内存文件访问的方法
Mar 26 Python
Python计算字符宽度的方法
Jun 14 Python
Python使用PyCrypto实现AES加密功能示例
May 22 Python
使用apiDoc实现python接口文档编写
Nov 19 Python
python3 tkinter实现添加图片和文本
Nov 26 Python
tensorflow模型转ncnn的操作方式
May 25 Python
python用什么编辑器进行项目开发
Jun 17 Python
详解python变量与数据类型
Aug 25 Python
Python中免验证跳转到内容页的实例代码
Oct 23 Python
python字符串拼接+和join的区别详解
Dec 03 Python
python3 通过 pybind11 使用Eigen加速代码的步骤详解
Dec 07 Python
Python安装使用Scrapy框架
Apr 12 Python
利用Python脚本实现自动刷网课
Feb 03 #Python
tensorflow 限制显存大小的实现
Feb 03 #Python
基于tensorflow指定GPU运行及GPU资源分配的几种方式小结
Feb 03 #Python
tensorflow指定GPU与动态分配GPU memory设置
Feb 03 #Python
TensorFlow内存管理bfc算法实例
Feb 03 #Python
python numpy数组中的复制知识解析
Feb 03 #Python
opencv python Canny边缘提取实现过程解析
Feb 03 #Python
You might like
星际原理概述
2020/03/04 星际争霸
用来解析.htpasswd文件的PHP类
2012/09/05 PHP
使用PHP强制下载PDF文件示例
2014/01/17 PHP
tp5(thinkPHP5框架)时间查询操作实例分析
2019/05/29 PHP
利用XMLHTTP传递参数在另一页面执行并刷新本页
2006/10/26 Javascript
翻译整理的jQuery使用查询手册
2007/03/07 Javascript
JQuery 绑定事件时传递参数的实现方法
2009/10/13 Javascript
JavaScript与DropDownList 区别分析
2010/01/01 Javascript
避免 showModalDialog 弹出新窗体的原因分析
2010/05/31 Javascript
ExtJS PropertyGrid中使用Combobox选择值问题
2010/06/13 Javascript
一个基于jquery的图片切换效果
2010/07/06 Javascript
JQuery对checkbox操作 (循环获取)
2011/05/20 Javascript
jquery图片不完全按比例自动缩小的简单代码
2013/07/29 Javascript
使用jQuery中的when实现多个AJAX请求对应单个回调的例子分享
2014/04/23 Javascript
特殊情况下如何获取span里面的值
2014/05/20 Javascript
JS中JSON对象和String之间的互转及处理技巧
2016/04/06 Javascript
js遍历json的key和value的实例
2017/01/22 Javascript
分分钟玩转Vue.js组件(二)
2017/03/01 Javascript
jQuery extend()详解及简单实例
2017/05/06 jQuery
Vue Router去掉url中默认的锚点#
2018/08/01 Javascript
基于Three.js实现360度全景图片
2018/12/30 Javascript
jquery实现二级导航下拉菜单效果实例
2019/05/14 jQuery
Python3基础之基本运算符概述
2014/08/13 Python
python进阶教程之文本文件的读取和写入
2014/08/29 Python
Python实现曲线点抽稀算法的示例
2017/10/12 Python
Python实现找出数组中第2大数字的方法示例
2018/03/26 Python
python3+PyQt5实现文档打印功能
2018/04/24 Python
python中树与树的表示知识点总结
2019/09/14 Python
selenium+python配置chrome浏览器的选项的实现
2020/03/18 Python
在python下实现word2vec词向量训练与加载实例
2020/06/09 Python
Django中F函数的使用示例代码详解
2020/07/06 Python
改变 Python 中线程执行顺序的方法
2020/09/24 Python
Python 制作查询商品历史价格的小工具
2020/10/20 Python
关于梦想的演讲稿
2014/05/05 职场文书
2014年学校法制宣传日活动总结
2014/11/01 职场文书
廉洁自律证明
2015/06/24 职场文书