这是我的意思的示例:
class Duck:
SIZE = 'Fat'
class GreenDuck(Duck):
COLOR = 'Green'
DESCRIPTION = SIZE + ' and ' + COLOR
>>> alien_duck = GreenDuck()
>>> print(alien_duck.DESCRIPTION)
NameError: name 'SIZE' is not defined
>>> alien_duck.SIZE
Fat
有没有一种方法可以从类内部访问父级“ size”类变量?
还在GreenDuck类中定义super().__init__()
并不能解决问题。
答案 0 :(得分:2)
因为它是一个类常量:
class GreenDuck(Duck):
COLOR = 'Green'
DESCRIPTION = Duck.SIZE + ' and ' + COLOR
答案 1 :(得分:0)
当从另一个类访问变量时,应该使用class.variableName而不是仅仅使用variable name。
如果要访问同一类(父类中也存在)中的变量,则self.variableName可用于引用在当前类的范围内定义的变量。