#!/usr/local/bin/python2 from copy import deepcopy class C(object): def __init__(self, a): self.a = a def p(self): print self.a c1 = C([1]) c2 = deepcopy(c1.p) c3 = deepcopy(c1) c1.a.append(2) c2.__self__.a = 2 c1.p() c2() c3.p()