コンストラクタとデストラクタ


コンストラクタ

オブジェクトを作る初めのときに呼ばれるもの

qiita.py
class Person(object):
    def __init__(self,name):
        self.name = name

デストラクタ

オブジェクトがなくなるときに呼ぶ物
使われなくなったときに呼び出される

qiita.py
class Person(object):
    def __init__(self,name):
        self.name = name

    def say_something(self):
        print("I am {}. hello".format(self.name))
        self.run()

    def run(self):
        print("run")

    #ここがデストラクタ
    def __del__(self):
        print("good bye")

実行結果

全てのコードが使われた時点で呼び出される

明示的に使いたい場合

qiita.py
del person

実行結果