面接でよく聞かれる質問はこれだと思います。
class A:
def __init__(self, name):
self.name = name
def __del__(self):
print self.name,
aa = [A(str(i)) for i in range(3)]
for a in aa:
del a
そして、このコードの出力とその理由。出力は何もありませんが、なぜですか? それは、a がリスト内のオブジェクトの ref であり、次に del メソッドを呼び出して、この ref を削除するがオブジェクトを削除しないためですか?