Я пытаюсь использовать соотношение композиций, но я не могу получить доступ к составному классу A: с этим кодом. Я пытаюсь добавить в список класса A объект из класса B.Не удается получить доступ к атрибутам экземпляра
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)
Когда я тест я получаю эту ошибку:
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)
Пожалуйста, помогите мне решить эту проблему.
... вы пытаетесь вызвать 'objA.add' с тремя аргументами (плюс неявное' self'), когда вы написали метод, чтобы принимать только 'self'. Что вас смущает? (Кроме того, у вас есть еще ряд ошибок в вашем коде.) – kindall
ваша ошибка говорит вам, что 'def add (self)' принимает только один аргумент, и вы пытались дать ему 4 ...... поэтому либо принять список чисел в этой функции или 3 дополнительные переменные. Кроме того, в вашем коде есть другие ошибки. – MooingRawr
@kiran Пожалуйста, не изменяйте - и изменяйте - намерение оригинального плаката (OP). –