gpt4 book ai didi

Python 魔术方法来改变处理对象的方式

转载 作者:行者123 更新时间:2023-12-01 05:21:48 27 4
gpt4 key购买 nike

我想知道,Python 中是否有一个简单的魔术方法,允许自定义异常派生对象在引发时的行为?我正在寻找类似 __raise__ 的东西(如果存在的话)。如果不存在这样的神奇方法,我有什么办法可以做类似以下的事情(这只是一个证明我的观点的例子):

class SpecialException(Exception):
def __raise__(self):
print('Error!')

raise SpecialException() #this is the part of the code that must stay

可能吗?

最佳答案

我不知道这样的魔术方法,但即使它存在,它也只是在实际引发异常对象之前执行的一些代码。假设引发就地实例化的异常对象是一种很好的做法,您可以将此类代码放入异常的 __init__ 中。另一种解决方法:不是直接引发异常,而是调用错误处理方法/函数来执行特殊代码,然后最终引发异常。

关于Python 魔术方法来改变处理对象的方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22160999/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com