Здравейте, искам да ползвам лист от Base елементи в класа Der. Когато използвам функция от Base за 1 елемент от списъка в Der ( self.problem[position].change( '111111') ), тя се вика за всички елементи на Bаsе ( не съм сигурен какво точно става затова написах и примера).
Искам когато напиша self.problem[position].change( '111111') да се променя само problem[position] елемента. Надявам се да ме разбрахте :)
class Base:
def __init__(self,p,l=[]):
self.__list = l
self.p = p
def change(self,li):
self.__list.append(li)
def show(self):
return self.__list
problem=[Base(1),Base(2)]
class Der:
def __init__(self):
self.problem = problem
def changeDer(self,position,stoinost): # stoinost ili
self.problem[position].change( '111111') #не работи
#self.problem[position].__list = '111111' #работи
def showDer(self,position):
return self.problem[position].show()
>>> d = Der()
>>> d.showDer(0)
[]
>>> d.showDer(1)
[]
>>> d.changeDer(0,'dsadsadasdas')
>>> d.showDer(0)
['111111']
>>> d.showDer(1)
['111111']