#!/usr/local/bin/python2 from copy import deepcopy class C(object): def __init__(self): self.a = [] self.b = [] def p(self): print self.a def s(self, v): self.a = v v.r = self c = C() c.s(C()) c.a.s(C()) p = deepcopy(c.a.a.p) c.p() p.__self__.r.r.p() c.b.append(1) c.p() p.__self__.r.r.p()