从子类实例访问父类实例属性?


问题内容

在此代码示例中,如何从“ child”访问“ myvar”:

class Parent():
    def __init__(self):
        self.myvar = 1

class Child(Parent):
    def __init__(self):
        Parent.__init__(self)

        # this won't work
        Parent.myvar

child = Child()

问题答案:

父级是一个类-蓝图不是它的实例,在OOPS中访问对象的属性它需要相同的实例,此处self / child是实例,而Parent / Child是类…

请参阅下面的答案,可能会澄清您的疑问。

class Parent():
    def __init__(self):
        self.myvar = 1

class Child(Parent):
    def __init__(self):
        Parent.__init__(self)

        # here you can access myvar like below.
        print self.myvar

child = Child()
print child.myvar