2017-05-11 4 views

Antwort

0

Sie benötigen worker_obj als Attribut der Instanz zuzuordnen (self):

class main(): 
    def __init__(self): 
     self.worker_obj = worker() 

Andernfalls Sie einfach eine lokale Variable innerhalb __init__ erstellen, die sofort den Gültigkeitsbereich verlässt.

0

Sie müssen das Attribut an self anhängen, um es für die Verwendung außerhalb der Funktion verfügbar zu machen. Derzeit erstellen Sie eine Funktionsvariable und kein Instanzattribut. Ändern Sie Ihre Klasse unter

class worker(): 
def run(self): 
    # Do something 

class main(): 
    def __init__(self): 
     self.worker_obj = worker() 

main_obj = main() 
main_obj.worker_obj.run() 
Verwandte Themen