调皮的控制台

Python 的交互控制台有一个特性是 _
会自动保存上一个表达式输出的非 None
值.
因此在删除y的以后 SomeClass
实例的引用计数器的值为1,而不是0.
所以 __del__
不会被调用。
当有新的表达式在控制台输出其他非 None
值时, _
就会改为保存新的输出值。
这时 SomeClass
实例的引用计数器的值就会变成0,GC就会启动调用 __del__
并回收对象。

Aaron Swartz was and will always be a hero