国产成人AV无码一二三区,少女1到100集,国产精品久久久久精品综合紧,巜公妇之诱感肉欲HD在线播放

文章 > Python高级 > Python中自定义异常的使用举例

Python中自定义异常的使用举例

头像

Python

2019-06-13 10:52:464411浏览 · 0收藏 · 0评论

通过创建一个新的异常类,程序可以命名它们自己的异常。异常应该是典型的继承自Exception类,通过直接或间接的方式。

以下为与RuntimeError相关的实例,实例中创建了一个类,基类为RuntimeError,用于在异常触发时输出更多的信息。

在try语句块中,用户自定义的异常后执行except块语句,变量 e 是用于创建Networkerror类的实例。

class Networkerror(RuntimeError):
  def __init__(self, arg):
   self.args = arg

在你定义以上类后,你可以触发该异常,如下所示:

try:
  raise Networkerror("Bad hostname")
except Networkerror,e:
  print e.args

在下面这个例子中,默认的__init__()异常已被我们重写。

>>> class MyError(Exception):
...   def __init__(self, value):
...     self.value = value
...   def __str__(self):
...     return repr(self.value)
...
>>> try:
...   raise MyError(2*2)
... except MyError as e:
...   print 'My exception occurred, value:', e.value
...
My exception occurred, value: 4
>>> raise MyError, 'oops!'
Traceback (most recent call last):
 File "<stdin>", line 1, in ?
__main__.MyError: 'oops!'

常见的做法是创建一个由该??槎ㄒ宓囊斐;嗪妥永?,创建特定的异常类不同的错误条件。

我们通常定义的异常类,会让它比较简单,允许提取异常处理程序的错误信息,当创建一个异常??榈氖焙?,常见的做法是创建一个由该??槎ㄒ宓囊斐;嗪妥永啵莶煌拇砦筇跫唇ㄌ囟ǖ囊斐@啵?/p>

class Error(Exception):
  """Base class for exceptions in this module."""
  pass
 
class InputError(Error):
  """Exception raised for errors in the input.
 
  Attributes:
    expression -- input expression in which the error occurred
    message -- explanation of the error
  """
 
  def __init__(self, expression, message):
    self.expression = expression
    self.message = message
 
class TransitionError(Error):
  """Raised when an operation attempts a state transition that's not
  allowed.
 
  Attributes:
    previous -- state at beginning of transition
    next -- attempted new state
    message -- explanation of why the specific transition is not allowed
  """
 
  def __init__(self, previous, next, message):
    self.previous = previous
    self.next = next
    self.message = message
关注

关注公众号,随时随地在线学习

本教程部分素材来源于网络,版权问题联系站长!

医生一直揉白带湿漉漉的正常吗| 双乳被四个男人吃奶H文| 你用甘甜的乳汁把我喂养大的歌词| 乌龙济公| 儿子耕种母亲的田地的收获| 《老板娘2》完整版| 可以进入任何网站的浏览器| 美女被咬小头头视频大全 | 《互换人妻HD中字》| 桃色公寓| 小叔子看亲嫂2什么时候开播| 丰满的儿女小月的身世与背景介绍| 美女两个球球抖动抓球球视频| 美国式禁忌3乱偷| 瑜伽裤透明全毛露丁字裤| 小妹妹爱大棒棒免费观看电视剧一 | 续父开续女包小芳的小说破| 免费观看已满十八岁在线播放电视..| 乡村玉米地周婶的小说叫什么名字 | 老公把舌头放进我B里搅拌| 妈妈的绣感| 原声舌吻| 禁忌1蜜桃熟了| 高H文| 动物与人类的关系| JK内衣| 把腿扒开让我添30分钟| 《日本公与媳5》公妇伦| 《两个儿媳》大结局| 双人打扑克剧烈运动视频| 丁香五月色情久久久久| 公翁晚上吃我奶头子| 《厨房激战5》完整版在线观看| 快一点慢一点上一点下一点歌曲| 《漂亮的女邻居5》HD | 妈妈在家穿超薄内裤的注意事项| 《艳妻互换》完整版| 中字HD人妻の亂倫2| 粗大的内捧猛烈进出H漫画小 | 抢钱袋鼠| 成都私人情侣免费看电视剧