Python 入門コース / 第6章 オブジェクト指向(第40〜46回) / レッスン 41

__init__ と self の正体

__init__ はいつ呼ばれるか

Product("マウス", 1980) と書いた瞬間、Python はインスタンスを作り、すぐに __init__ を呼びます。ここで初期値を受け取って属性にセットするわけです。自分で呼ぶものではありません。

editor.py

self は「この実物自身」

メソッドの第 1 引数 self は、呼び出しに使われたインスタンス自身です。u1.log("...") は内部的には User.log(u1, "...") と解釈されます。だから全メソッドの第 1 引数に self が要るのです。

editor.py

self という名前は慣習(変えても動きますが、絶対に変えないでください)。self. を付け忘れるとメソッド内だけのローカル変数になり、属性が保存されません。「値を保存したいなら self.」と覚えてください。

editor.py

✅ 理解度チェック

メソッドの第 1 引数 self が指しているものは?