Форум сайта python.su
class container_class():
def __init__(self):
print "container"
def load_items(self):
self.items_list=list()
self.items_list.append(container_item_class)
self.items_list[0].test_var()
def check_all_test_var(self):
self.items_list[0].output_test_var()
class container_item_class():
def __init__(self):
print "container item class on"
def output_test_var(self):
print self.a
def test_var(self):
self.a=5
container=container_class()
container.load_items()
container.check_all_test_var()
Traceback (most recent call last):Причем если вызвать функцию таким образом:
File “.\class_check.py”, line 34, in <module>
container.load_items()
File “.\class_check.py”, line 11, in load_items
self.items_list.test_var()
TypeError: unbound method test_var() must be called with container_item_class in
stance as first argument (got nothing instead)
test=container_item_class()
test.test_var()
test.output_test_var()
container item class onНо мне необходимо вызывать функцию из класса class container_class, подскажите можно это сделать по человечески?
5
Отредактировано (Ноя. 30, 2009 22:48:35)
Офлайн
попробуй объявить container_item_class выше чем container_class
Офлайн
у вас в коде не правильная инициализация класса
должно быть так:
self.items_list.append(container_item_class())
Отредактировано (Ноя. 30, 2009 23:29:06)
Офлайн
wonderfulll спасибо огромное, все заработало.
Офлайн