__call__メソッド

class Person():
    def __init__(self, name, age):
        self.name = name
        self.age = age

    def intro(self):
        print(f"私の名前は{self.name}です。")
        print(f"年齢は{self.age}歳です。")

    def __call__(self):
        print(f"{self.name}さんは{self.age}歳です。")
Taro = Person("太郎", 18)
Taro.intro()
Taro()
私の名前は太郎です。
年齢は18歳です。
太郎さんは18歳です

__call__メソッドの宣言方法
class クラス名():
def __call__(self):
以降にプログラムを書く

__call__メソッドの呼び出し方
クラス名()

__call__メソッドはクラスの代表的なメソッドを定義することが多い。

コメント

タイトルとURLをコピーしました