Monkey-patch Python class

Viewed 41569

I've got a class, located in a separate module, which I can't change.

from module import MyClass

class ReplaceClass(object)
  ...

MyClass = ReplaceClass

This doesn't change MyClass anywhere else but this file. However if I'll add a method like this

def bar():
   print 123

MyClass.foo = bar

this will work and foo method will be available everywhere else.

How do I replace the class completely?

4 Answers
Related