Как скопировать функцию-член другого класса в myclass в python? - PullRequest
8 голосов
/ 10 марта 2012

У меня есть служебный класс, из которого я хочу использовать одну из функций-членов в другом классе.Я не хочу наследовать от этого класса.Я просто хочу повторно использовать код из одной функции-члена другого класса.Вид частичного наследования.

class HugeClass():
   def interestedFunc(self,arg1):
      doSomething(self.someMember1)
   def OtherFunctions(self):
      ...



class MyClass():
   def __init__(self):
      self.someMember1 = "myValue"
      self.interestedFunc = MagicFunc(HugeClass.interestedFunc)

c = MyClass()
print c.interestedFunc(arg)

Есть ли такой MagicFunc в питоне?

1 Ответ

9 голосов
/ 10 марта 2012

Вы можете делать то, что вы хотите, т.е.

class Foo(object):
    def foo(self):
        print self.a

class Bar(object):
    foo = Foo.__dict__['foo']

b = Bar()
b.a = 1
b.foo()

Но вы уверены, что это хорошая идея?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...