首页 > 编程语言 >python在抛出错误raise时,如何将相关信息一同携带出来(抛出自定义对象)?

python在抛出错误raise时,如何将相关信息一同携带出来(抛出自定义对象)?

时间:2023-08-11 11:44:06浏览次数:45  
标签:info raise python 抛出 self print MyClass my method

示例

  • 代码示例
class MyClass(Exception):
    def __init__(self, info):
        self.info = info

    def my_method(self):
        print('MyClass.my_method print self.info:', self.info)

try:
    raise MyClass('错误信息')
except MyClass as e:
    print('e: ', e)
    print('type(e): ', type(e))
    e.my_method()
  • 运行结果
e:  错误信息
type(e):  <class '__main__.MyClass'>
MyClass.my_method print self.info: 错误信息

可见,可将相关属性及自定义一些方法进行抛出,通过try except捕捉到e后,进行后续操作,比纯抛出Exception灵活性更大,比return一层层返回更方便。

标签:info,raise,python,抛出,self,print,MyClass,my,method
From: https://www.cnblogs.com/aiyablog/p/17622625.html

相关文章

  • 时序分析:Python 中的 ARIMA 模型
    推荐:使用NSDT场景编辑器快速助你搭建可二次编辑的3D应用场景什么是ARIMA模型?ARIMA模型是用于分析和预测时间序列数据的统计模型。ARIMA方法明确迎合了时间序列中的标准结构,为制作熟练的时间序列预测提供了一种简单而强大的方法。ARIMA代表自回归积分移动平均线。它结合了三......
  • 2.0 Python 数据结构与类型
    数据类型是编程语言中的一个重要概念,它定义了数据的类型和提供了特定的操作和方法。在python中,数据类型的作用是将不同类型的数据进行分类和定义,例如数字、字符串、列表、元组、集合、字典等。这些数据类型不仅定义了数据的类型,还为数据提供了一些特定的操作和方法,例如字符串支持......
  • Python处理Nginx配置的实现方法
    Nginx是一个高性能的Web服务器和反向代理服务器,它可以用于实现多种功能。在实际应用中,我们可能需要根据不同的需求修改Nginx的配置文件。本文将介绍如何使用Python来处理Nginx配置文件。一、安装必要的库为了方便地操作Nginx配置文件,我们需要安装一些Python库。其中,pyparsing和ngin......
  • ubuntu 22.04安装python3.8
    ubuntu22.04如果直接安装python3,装的是python3.10,但现在某外部程序依赖python3.8,所以需要重新安装。不推荐方法网上常见方法是add-apt-repository添加ppa:deadsnakes源,但这样会导致同时安装python3.8和python3.10。可我不想有两个版本。命令如下:#这是不推荐的安装方法,更......
  • python中的集合、元祖、any()等方法介绍
    #{'a','b','c'}怎么变成‘a,b,c’my_set={'a','b','c'}result=','.join(my_set)print(result)#输出:'a,b,c'any()函数:any() 是Python内置的一个函数,用于判断可迭代对象中的元素是否至少有一个满足条件。它接受一个可迭代对象......
  • opencv-python 车牌检测和识别
    首先利用级联分类器把车牌位置找到取出来,然后用ocr进行车牌识别。1 OCR之Tesseract安装Tesseract安装可以参考这个链接: https://blog.csdn.net/m0_53192838/article/details/127432761 写的比较详细,我在使用的时候有一个报错有点意思,记录一下: Tesseractocr识别报错:tesser......
  • 终于搞懂了python2和python3的encode(编码)与decode(解码)
    终于搞懂了python2的编码在python2下碰到非常多次的中文乱码,这次来梳理一下编码问题。在python2中默认编码是ASCII,而在python3中默认编码是unicode。unicode是中间编码,任何字符编码之前的转换都必须解码成unicode,再编码成目标字符编码在python2读取文件时,如果文件编码......
  • Couldn't launch Python exit code 9009
    Couldn'tlaunchPythonexitcode9009startstable-diffusion-webui,发现,python环境没有,我本地其实是已经安装完毕的,后来发现是因为windows的应用商店的快捷键,当你CMD命令行输入python的时候,会自动跳转到应用商店,然后你就会发现,你的python环境没有了,所以,需要将应用商店......
  • opencv-python 人脸人眼检测
    人脸检测:在一张图像中判断是否存在人脸并找出人脸所在的位置。人脸识别:在人脸检测的基础上收集人脸数据集合进行处理保存信息,将输入人脸与保存的信息进行比对校验,得到是否为其中某个人脸。特征值:以某种特定规则对输入源进行处理得到具有唯一性质量化的值,在人脸识别中特征值的提......
  • opencv-python 视频前后景分离
    背景分离(BS)是一种通过使用静态相机来生成前景掩码(即包含属于场景中的移动对象像素的二进制图像)的常用技术。BS计算前景掩码,在当前帧与背景模型之间执行减法运算,其中包含场景的静态部分,或者更一般而言,考虑到所观察场景的特征,可以将其视为背景的所有内容。前后景分离分为两步:第一步......