Можно ли добавить базовый класс к экземпляру объекта (а не классу!) во время выполнения? Что-то вроде того, как Object#extend
работает в Ruby:
class Gentleman(object):
def introduce_self(self):
return "Hello, my name is %s" % self.name
class Person(object):
def __init__(self, name):
self.name = name
p = Person("John")
# how to implement this method?
extend(p, Gentleman)
p.introduce_self() # => "Hello, my name is John"