Скажем, вы хотите, чтобы C установил имена для некоторых объектов типов A и B, а затем вызовите некоторые методы print_a и print_b для объектов типа C, чтобы получить эти имена обратно?
Вы можете получить этот тип поведения, используя модель наследования C ++, но модель Python сильно отличается. Только один объект с одним набором полей. Если вам нужно поведение C ++, возможно, самый простой способ - объявить подобъекты (и это выглядит как обычное злоупотребление наследованием над композицией).
Похоже, вы пытаетесь сделать что-то вроде ниже:
class Printable(object):
def __init__(self, name):
self.name = name
def myprint(self):
print self.name
class C(object):
def __init__(self):
self.a = Printable('A')
self.b = Printable('B')
def print_a(self):
self.a.myprint()
def print_b(self):
self.a.myprint()
if __name__ == '__main__':
c = C()
c.print_a()