python异常触发及自定义异常类解析

yipeiwu_com6年前Python基础

python程序运行中,可由程序抛出异常。

异常触发:使用raise命令抛出异常,即可使用异常基类Exception,也可使用自定义异常类(继承Exception类)。

class Point:
  def __init__(self, x, y):
    self.x = x
    self.y = y
# Define a class to raise Line errors
class LineError(Exception):  #继承自基类Exception
  def __init__(self,ErrorInfo):
    self.errorinfo=ErrorInfo
  def __str__(self):
    return self.errorinfo
class Line:
  def __init__(self, point1, point2):
    self.point1 = point1
    self.point2 = point2
    if point1.x==point2.x and point1.y==point2.y:
      raise LineError("Cannot create line") 
line = Line(Point(1, 2), Point(1, 2))

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python使用json序列化datetime类型实例解析

使用python的json模块序列化时间或者其他不支持的类型时会抛异常,例如下面的代码: # -*- coding: cp936 -*- from datetime import d...

python如何实现不可变字典inmutabledict

这篇文章主要介绍了python如何实现不可变字典inmutabledict,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 关于在pyt...

对python:print打印时加u的含义详解

u:表示unicode字符串 不是仅仅是针对中文, 可以针对任何的字符串,代表是对字符串进行unicode编码。 一般英文字符在使用各种编码下, 基本都可以正常解析, 所以一般不带u;...

Python QQBot库的QQ聊天机器人

Python QQBot库的QQ聊天机器人

本文实例为大家分享了Python QQBot库的QQ聊天机器人的具体代码,供大家参考,具体内容如下 项目地址:https://github.com/pandolia/qqbot 1.安装...

python 类对象和实例对象动态添加方法(分享)

实例如下所示: class Person(): def __init__(self, name): self.name = name def print_name(self)...