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设计】。

相关文章

Django之路由层的实现

Django之路由层的实现

URL配置(URLconf)就像Django所支撑网站的目录。它的本指是URL与要为该URL调用的视图函数之间的映射表,你就是以这种方式告诉Django,对于客户端发来的某个URL调用哪...

python 3.74 运行import numpy as np 报错lib\site-packages\numpy\__init__.py

安装完 anaconda 运行如下代码执行不了 import numpy as np import os,sys #获取当前文件夹,并根据文件名 def path(fileName...

python求素数示例分享

复制代码 代码如下:# 判断是否是素数def is_sushu(num): res=True for x in range(2,num-1):  ...

python之yield表达式学习

python中有一个略微奇怪的表达式叫yield expression,本文就来探究一下这是个什么东西。一步一步来。 iterable 复制代码 代码如下: mylist = [1,2,...

解决pyshp UnicodeDecodeError的问题

用最新版本(2.1.0)的pyshp解析shp文件的records时: records = sf.records() 如果records里面含有中文字段,那么就会报错: Uni...