gpt4 book ai didi

python - 为什么子类不会覆盖 python 中基类的字段以及如何处理

转载 作者:行者123 更新时间:2023-11-28 20:47:14 26 4
gpt4 key购买 nike

我在 python 中创建基于抽象类,它是所有子类的基础类,并实现一些函数,这些函数每次在每个子类中编写都是多余的。

class Element:

###SITE###
__sitedefs = [None]

def getSitedefs(self):
return self.__sitedefs


class SRL16(Element):

###SITE###
__sitedefs = ['SLICEM']

手头的结果是合乎逻辑的,因为我从我声明值的基类中获取值,否则我在子类中覆盖了它。我的问题是如何从

srl = SRL16()
srl.getSitedefs()

SLICEM 不是无

可能我误解了一些非常基础的东西,但请帮忙。

最好的问候

最佳答案

您的问题是由于名称修改造成的。参见例如:What is the meaning of a single- and a double-underscore before an object name? .

如果您将所有 __sitedefs 更改为 _sitedefs,那么一切都应该按预期工作。

关于python - 为什么子类不会覆盖 python 中基类的字段以及如何处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19299168/

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