Python: Variable bleibt undefiniert, obwohl sie eindeutig definiert sein müsste?
Hey
Bei folgendem Code:
class klasse:
variable = None #Auch mit variable = "" probiert
def __init__(self, argument):
self.variable = andere_klasse(argument)
def funktion(self, argument):
self.variable.variable_in_anderer_klasse = argument
Tritt das problem auf, dass 'variable' immer bei der ursprünglichen Definierung bleibt und ich die Funktion der anderen Klasse nicht aufrufen kann.
AttributeError: 'NoneType' object has no attribute 'variable_in_anderer_klasse'
Woran liegt das?
1 Antwort
Vom Beitragsersteller als hilfreich ausgezeichnet
Von gutefrage auf Grund seines Wissens auf einem Fachgebiet ausgezeichneter Nutzer
Computer, Informatik, Programmiersprache
- Lass die Klassenvariable weg. Die ist nutzlos und macht es nur schwieriger, den Fehler zu finden.
- Bist Du sicher, dass andere_klasse(argument) keinen None zurückgibt?
- Wird der Konstruktor von klasse überhaupt aufgerufen? (Bei abgeleiteten Klassen musst Du das explizit selbst machen.)
Natürlich, andere_klasse endet in einer Endlosschleife, vielen Dank!