I don't know if my question is too confusing or even correct, so to make it clear here's an example:
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')
What I want to accomplish is whenever I change the addr attribute of the Parent object the addr attribute of child1 and child2 objects inside of Parent are also changed.
parent.child1.addr >>> 'USA'
But when I change the Parent object Parent.child1 remains the same.
parent.addr = 'France'
parent.child1.addr >>> 'USA'
parent.addr >>>'France'