class A():
    def __init__(self):
        self.a='a'

    def foo_a(self):
        print('a')

class B():
    def __init__(self):
        self.b='b'

    def foo_b(self):
        print('b')

a = A()
print(dir(a))
a.__dict__.update(B().__dict__)
print(dir(a))
print(a.a, a.b)
a.foo_a() #works
a.foo_b() #doesn't work
