weakref 待解决.
暂时不知为何在控制台多执行一次b()后,del a就不会立即销毁Foo实例.
>>> class Foo(object): def __init__(self): self.obj = None print ('created') def __del__(self): print ('destroyed') def show(self): print (self.obj) def store(self, obj): self.obj = obj >>> import weakref >>> a = Foo() created >>> b = weakref.ref(a)>>> del a destroyed >>> a = Foo() created >>> b = weakref.ref(a) >>> b() <__main__.Foo object at 0x0000000002B025F8> >>> del a