Python 是否可以为不从超类继承的类的属性重写setter?

Python 是否可以为不从超类继承的类的属性重写setter?,python,Python,我的类有一个直接赋值的属性,只需调用class.attribute=value。但是,我想在设置此值之前运行一些检查,我的问题是,是否可以在不定义为此显式调用的setter方法的情况下执行此操作。该类不是从超类继承的,这意味着我不能使用以下方法: @Superclass.attribute.setter attribute(self): ###insert custom code here 我已经尝试忽略超类,但这给了我一个错误,即“attribute is not defined”(属性未定

我的类有一个直接赋值的属性,只需调用class.attribute=value。但是,我想在设置此值之前运行一些检查,我的问题是,是否可以在不定义为此显式调用的setter方法的情况下执行此操作。该类不是从超类继承的,这意味着我不能使用以下方法:

@Superclass.attribute.setter
attribute(self):
###insert custom code here

我已经尝试忽略超类,但这给了我一个错误,即“attribute is not defined”(属性未定义),即使它是在init方法中定义的。

IMO,您不应该覆盖超类属性。如果超类发生更改,代码将中断


你应该自己复制一份,然后想用它做什么就做什么。在设置超类(属性的副本)之前,对其进行
hasattr
检查,这样当超类中的属性因某种原因发生更改时,代码不会中断。

不应覆盖超类属性。你应该自己复制一份,然后想用它做什么就做什么。在设置超类之前,对其进行
hasattr
检查,这样当超类中的属性因某种原因发生更改时,代码不会中断。请提供该类的确切示例。不清楚您所指的是类属性还是实例属性。