【Python】__init__, self, インスタンス変数とは?

Python

Pythonを学習するなかで、気になったのでまとめました。

クラスを定義するときの注意事項

  • 慣習としては、クラス名は常に大文字で始める。複数単語をつなげるときも「_(アンダーバー)」は使用せず、大文字にして区別する
  • 1つ目の引数に必ず「self」を指定する

selfとは

クラスを定義する際の1つ目に定義する必要のある引数。「self」には、そのメソッドを呼び出すときに使ったインスタンスが渡される。

インスタンス変数とは

そのインスタンスに属している変数。複数のインスタンスを作ると、各インスタンスは各々異なる値をインスタンス変数として持つことになる。

各インスタンスごとに変数は異なるので、インスタンス内で定義される変数は「self」を用いて、以下のように定義されている。

class Main:
    def __init__(self, num1, num2):
        self.width = num1
        self.height = num2
        print('done')

__init__とは

インスタンス変数を定義する特別なメソッド。使い方は、インスタンス変数の所のコードの通り。インスタンス化する際に、Pythonから呼び出されるメソッド。

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