Ich versuche, die Zusammensetzungsbeziehung zu verwenden, aber ich kann nicht auf die zusammengesetzte Klasse A zugreifen: mit diesem Code Ich versuche, der Liste der Klasse A ein Objekt aus der Klasse hinzuzufügen B.Zugriff auf Instanzattribute nicht möglich
class B:
def __init__(self,X,Y,Z):
self.X
self.Y
self.Z
def Xreturner(self):
return self.X
def Yreturner(self):
return self.Y
def Zreturner(self):
return self.Z
class A:
def __init(self):
self.lst=[[1,2,3],[3,4,5],]
self.b=B()
def add(self): # trying to add b object to the list
self.lst.append(self.b)
#### TEST####
objA=A()
objA.add(6,7,8)
Wenn ich teste ich bekomme diese Fehlermeldung:
Traceback (most recent call last):
File "home/testXYZ.py", line 28, in <module>
objA.add(6,7,8)
TypeError: add() takes exactly 1 argument (4 given)
Bitte helfen Sie mir, diese zu lösen.
... Sie versuchen, 'objA.add' mit drei Argumenten (plus dem impliziten' self') aufzurufen, wenn Sie die Methode geschrieben haben, nur 'self' zu nehmen. Worüber bist du verwirrt? (Sie haben auch eine Reihe anderer Fehler in Ihrem Code.) – kindall
Ihr Fehler sagt Ihnen, dass 'def add (self)' nur 1 Argument braucht und Sie versucht haben, es 4 zu geben ...... also entweder akzeptieren a Liste von Zahlen in dieser Funktion oder 3 zusätzliche Variablen. Außerdem gibt es andere Fehler in Ihrem Code. – MooingRawr
@kiran Bitte bearbeiten und ändern Sie nicht die Absicht des ursprünglichen Posters (OP). –