2021.08.28  

【Python】クラスの中のメソッドからメソッドを呼び出す

Python    

Pythonのクラスの中にメソッドを作成して、そのメソッドを同じクラスのメソッドから呼び出す方法をメモ書きします。

ちょっと何を言っているのか分かりにくいと思うので、さっそくそのソースを記載します。

ソースコード
class dog:

    @staticmethod
    def bark():
        result = dog.wanwan()
        return result

    @staticmethod
    def wanwan():
        return "わんわん"


print(dog.bark())
実行結果
わんわん

@staticmethod とはデコレータの一種で、関数の上に記述するとクラスをインスタンス化しなくてもその関数を実行できるようになります。

インスタンス化せずに関数を呼び出すにはクラス名.関数名と記述します。

ここではdog.bark()と記述しています。

それで今回やりたいことは、bark関数からwanwan関数を呼びだすことです。

wanwan関数を

    @staticmethod
    def wanwan():
        return "わんわん"

のように作成し、それをbarkから呼びだすには、

    @staticmethod
    def bark():
        result = dog.wanwan()
        return result

のように記述します。

もちろん下記のように書き換えることも可能です。

    @staticmethod
    def bark():
        return dog.wanwan()


関連記事
【Python】クラスからクラスを呼び出し、メソッドを実行する

コメント
現在コメントはありません。
コメントする
コメント入力

名前 (※ 必須)

メールアドレス (※ 必須 画面には表示されません)

送信