aname是一个实例变量.要从B的实例访问它,您需要将A的实例传递给B,以便B实例访问aname.
但是在实例化之前你不能传递A的实例.相反,您可以定义B实例列表,并在后续步骤中将它们添加为aobj的属性:
class A:
def __init__(self, name, bs=None):
self.aname = name
self.bees = bs
aname = ''
bees = []
class B:
def __init__(self, name, a_inst):
self.a_inst = a_inst
self.bname= name
bname= ''
def get_aname(self):
return self.a_inst.aname
aobj = A('name of class A')
L = [B('1', aobj), B('2', aobj), B('3', aobj)]
aobj.bees = L
aobj.bees[0].get_aname() # 'name of class A'