124bit
Окт. 9, 2008 18:37:27
У меня есть словарь и два класса.. в словаре куча { имя : класс1.фунуция - без скобок в конце, имя : класс1.фунуция }. Мне надо из второго класса запускать эти функции с какими то аргументами. Когда я это пытаюсь делать - вылазит TypeError: unbound method www4buxorg_serfer() must be called with serfers instance as first argument (got str instance instead) .. как туда впихнуть ихний сэлф… или я нихрена не понимаю, и это нада както не так реализовывать?
124bit
Окт. 9, 2008 19:02:07
и вообще.. вот я создал модули module1.py
\\module1.py
class arcm:
def k(self):
print ‘jo-pe-re-se-te’
class serfers(arcm):
self.k()
def traatata(self,a):
print a
_____________________________________конец
терь я его хочу использовать:
from module1 import serfers
print sefrers.traatata('joptet')
выводит ошибку TypeError: unbound method thinkbuxcom_serfer() must be called with serfers instance as first argument (got str instance instead) как так сдела, чтоб его запустить?,
shiza
Окт. 9, 2008 19:53:54
124bit
У меня есть словарь и два класса.. в словаре куча { имя : класс1.фунуция - без скобок в конце, имя : класс1.фунуция }. Мне надо из второго класса запускать эти функции с какими то аргументами. Когда я это пытаюсь делать - вылазит TypeError: unbound method www4buxorg_serfer() must be called with serfers instance as first argument (got str instance instead) .. как туда впихнуть ихний сэлф… или я нихрена не понимаю, и это нада както не так реализовывать?
class c1:
def f1(self, x):
print 'c1-f1 x:', x
class c2:
def f2(self, x):
print 'c2-f2 x:', x
o1 = c1()
o2 = c2()
d = {'obj1_f1':o1.f1, 'obj2_f2':o2.f2}
d['obj2_f2'](23)
shiza
Окт. 9, 2008 19:55:23
Ты эта, из помоему из классов забываешь объекты создавать.
Сами по себе классы - это только шаблоны, по которым создаются уже объекты.
124bit
Окт. 9, 2008 21:12:15
тьфу.. я и так пробывал и просто вызвал - не работало(( странно. ща перепробую)
ice
Окт. 9, 2008 22:59:23
class c1:
def f1(self, x):
print 'c1-f1 x:', x
class c2:
def f2(self, x):
print 'c2-f2 x:', x
d = {'obj1_f1':c1().f1, 'obj2_f2':c2().f2}
d['obj2_f2'](23)
from module1 import serfers
print sefrers().traatata('joptet')