Python 通过列表引用类实例
我有两节课<代码>省创建一组Python 通过列表引用类实例,python,arrays,python-3.x,class,oop,Python,Arrays,Python 3.x,Class,Oop,我有两节课省创建一组地区的实例,并将它们放入其自身地区列表中。我想让一个区域实例访问省实例的属性(或其他数据),该实例包含在其自我区域列表中。要可视化: class Province: def __init__(self, stuff="spam"): self.stuff = stuff self.areas = list() def makeareas(self): # make instances of Areas and p
地区的实例
,并将它们放入其自身地区
列表中。我想让一个区域
实例访问省
实例的属性(或其他数据),该实例包含在其自我区域
列表中。要可视化:
class Province:
def __init__(self, stuff="spam"):
self.stuff = stuff
self.areas = list()
def makeareas(self):
# make instances of Areas and put them in self.areas
class Areas:
def __init__(self):
pass
def access_stuff(self):
# access stuff of the Province where it is in its list
我如何做到这一点?更重要的是,这是一个正确的方法吗?有没有一种我不知道的更合理、更简单的方法来实现这一点?在实例化
区域时
将引用传递给省
,例如:
代码:
测试代码:
结果:
哇,反应真快。谢谢,这正是我需要的。
class Province:
def __init__(self, stuff="spam"):
self.stuff = stuff
self.areas = list()
def makeareas(self, area):
self.areas.append(Areas(area, self))
class Areas:
def __init__(self, area, province):
self.area = area
self.province = province
def access_stuff(self):
# access stuff of the Province where it is in its list
return '%s - %s ' %(self.area, self.province.stuff)
p = Province('This is stuff')
# Examples
p.makeareas('area1')
p.makeareas('area2')
for area in p.areas:
print(area.access_stuff())
area1 - This is stuff
area2 - This is stuff