python 3ステップの_del__()方法(五)
3689 ワード
del()メソッド
オブジェクトの作成後、pythonインタプリタはデフォルトで__を呼び出します.init__()メソッド
オブジェクトを削除すると、python解釈器はデフォルトでメソッドを呼び出します.このメソッドは__です.del__()メソッド
まとめ:オブジェクトの参照を1つの変数で保存すると、そのオブジェクトの参照カウントに1 が加算されます. delを使用して変数が指すオブジェクトを削除する場合、オブジェクトの参照カウントが1、例えば3でない場合、この参照カウントは1だけ減算されます.すなわち2になります.delを再度呼び出すと1になります.delをもう一度呼び出すと、本当に になります.
補足:内部には参照カウントが維持されているはずです.
オブジェクトの作成後、pythonインタプリタはデフォルトで__を呼び出します.init__()メソッド
オブジェクトを削除すると、python解釈器はデフォルトでメソッドを呼び出します.このメソッドは__です.del__()メソッド
import time
class Animal(object):
#
#
def __init__(self, name):
print('__init__ ')
self.__name = name
#
# ,
def __del__(self):
print("__del__ ")
print("%s ..."%self.__name)
#
dog = Animal(" ")
#
del dog
cat = Animal(" ")
cat2 = cat
cat3 = cat
print("--- cat ")
del cat
print("--- cat2 ")
del cat2
print("--- cat3 ")
del cat3
print(" 2 ")
time.sleep(2)
まとめ:
補足:内部には参照カウントが維持されているはずです.