По какой-то причине моей первой мыслью было множественное наследование. Но почему бы не попробовать нормальное наследование?
class foo(functions.foo):
# All of the methods that you want to add go here.
Есть ли какая-то причина, по которой это не сработает?
Поскольку вы просто хотите объединить определения классов, почему бы вам не сделать это:
# main.py
import functions
# All of the old stuff that was in main.foo is now in this class
class fooBase(asd.fgh):
def qwerty(self):
print 'qwerty'
# Now create a class that has methods and attributes of both classes
class foo(FooBase, functions.foo): # Methods from FooBase take precedence
pass
или
class foo(functions.foo, FooBase): # Methods from functions.foo take precedence
pass
Это позволяет использовать возможности питонов для множественного наследования для создания нового класса с методами из обоих источников.