Pythonを学んでいると、クラスの中で関数を定義するときに引数でselfを渡すことがよくあります。このselfは、クラスのインスタンス自身を指すもので、Pythonの設計仕様で欠かすことはできません。

selfの役割

Pythonでは、クラスからインスタンスを生成し、そのインスタンスからメソッドを呼び出すとき、そのメソッドはインスタンス自身を引数として受け取る必要があります。このインスタンス自身を受け取る引数がselfです。

selfの使い方

インスタンス変数として参照する

Pythonのクラスのコンストラクタでは、selfを使ってインスタンス変数を定義します。以下に例を示します。

class ClassName:
    def __init__(self, strA, strB):
        self.strA = strA
        self.strB = strB

test = ClassName("Hello", "World!")
print(test.strA)
print(test.strB)

このコードを実行すると、”Hello”と”World!”が出力されます。

クラス変数として参照する

selfは、クラス内の他のメソッドからも参照できます。

注意点

selfはPythonの設計仕様で必須ですが、名前をself以外のもの(例えば、myselfなど)にすることも可能です。しかし、Pythonでは作成されたコードを後から読む人が、どのように実装されているかが一目でわかるように書くことが重要であるため、基本的にはselfとするのが良いでしょう。

以上、Pythonのクラスのselfについての説明でした。この情報がPythonの学習に役立つことを願っています。

投稿者 admin

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です