python自定义异常实例详解

yipeiwu_com6年前Python基础

python自定义异常实例详解

         本文通过两种方法对Python 自定义异常进行讲解,第一种创建一个新的exception类来拥有自己的异常,第二种:raise 唯一的一个参数指定了要被抛出的异常

1、可以通过创建一个新的exception类来拥有自己的异常。异常应该继承自 Exception 类,或者直接继承,或者间接继承。

>>>raiseNameError('HiThere')
Traceback(most recent call last):
File"<pyshell#45>", line 1,in<module>
raiseNameError('HiThere')
NameError:HiThere

 2、raise 唯一的一个参数指定了要被抛出的异常。它必须是一个异常的实例或者是异常的类(也就是 Exception 的子类)。

如果你只想知道这是否抛出了一个异常,并不想去处理它,那么一个简单的 raise 语句就可以再次把它抛出。

>>>classMyError(Exception):
def __init__(self, value):
      self.value = value
def __str__(self):
return repr(self.value)
>>>try:
raiseMyError(2*2)
exceptMyErroras e:
print('My exception occurred, value:', e.value)
My exception occurred, value:4
>>>raiseMyError('oops!')
Traceback(most recent call last):
File"<pyshell#64>", line 1,in<module>
raiseMyError('oops!')
MyError:'oops!'

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

相关文章

Python常用算法学习基础教程

Python常用算法学习基础教程

本节内容 算法定义 时间复杂度 空间复杂度 常用算法实例 1.算法定义 算法(Algorithm)是指解题方案的准确而完整的描述,是一系列解决问题的清晰指令,算法代表着用系统的方法描...

django框架模板中定义变量(set variable in django template)的方法分析

本文实例讲述了django框架模板中定义变量的方法。分享给大家供大家参考,具体如下: 总有一些情况,你会想在django template中设置临时变量,但是django 对在模板中对临...

Python实现二分查找与bisect模块详解

前言 其实Python 的列表(list)内部实现是一个数组,也就是一个线性表。在列表中查找元素可以使用 list.index() 方法,其时间复杂度为O(n) 。对于大数据量,则可以用...

Python最火、R极具潜力 2017机器学习调查报告

Python最火、R极具潜力 2017机器学习调查报告

数据平台 Kaggle 近日发布了 2017 机器学习及数据科学调查报告,这也是 Kaggle 首次进行全行业调查。调查共收到超过 16000 份回复,受访内容包括最受欢迎的编程语言、不...

python二叉树的实现实例

树的定义树是一种重要的非线性数据结构,直观地看,它是数据元素(在树中称为结点)按分支关系组织起来的结构,很象自然界中的树那样。树结构在客观世界中广泛存在,如人类社会的族谱和各种社会组织机...