Comment accéder à la classe parent dans l'imbrication de classes Python
淡淡烟草味
淡淡烟草味 2017-05-18 10:52:40
0
1
875
#!/usr/bin/env python  

class parent:  
    def __init__(self):  
        self.name = 'parent'  
  
    def getName(self):  
        print(self.name)

    class child:
        def getName(self):
            #如何访问到父类的name值
  
  
if __name__ == '__main__':  
    child =  parent.child()  
    child.getName()
淡淡烟草味
淡淡烟草味

répondre à tous(1)
左手右手慢动作

parent.name n'existe pas avant l'instanciation du parent, donc l'enfant ne peut pas accéder à parent.name
Il existe deux méthodes

class parent:  
    name = 'parent'  
  
    def getName(self):  
        print(self.name)

    class child:
        def getName(self):
            return parent.name
  
  
if __name__ == '__main__':  
    child =  parent.child()  
    child.getName()

Ou instanciez d'abord le parent, puis transmettez les paramètres dans

class parent:  
    def __init__(self):  
        self.name = 'parent'  

  
    def getName(self):  
        print(self.name)

    class child:
        def __init__(self,parent):
            self.parent = parent

        def getName(self):
            return self.parent.name
  
  
if __name__ == '__main__':  
    parent = parent()
    child =  parent.child(parent)  
    child.getName()
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal