小编Vin*_*ida的帖子

类的对象是否可能具有与它们所在的类属性相同的引用?

我不知道我的问题是不是太混乱,甚至是正确的,所以为了清楚起见,这里有一个例子:

class Parent():
  def __init__(self,addr):
    self.addr = addr
    self.child1 = Child(self.addr)
    self.child2 = Child(self.addr)

class Child():
  def __init__(self,addr):
    self.addr = addr

parent = Parent('USA')
Run Code Online (Sandbox Code Playgroud)

每当我改变我想要做到的是addr对的属性Parent对象addr的属性child1child2对象的内部Parent也发生变化。

parent.child1.addr >>> 'USA'
Run Code Online (Sandbox Code Playgroud)

但是当我改变Parent对象时,对象Parent.child1保持不变。

parent.addr = 'France'

parent.child1.addr >>> 'USA'
parent.addr >>>'France'
Run Code Online (Sandbox Code Playgroud)

python oop python-3.x

3
推荐指数
1
解决办法
57
查看次数

标签 统计

oop ×1

python ×1

python-3.x ×1