selfをあえて書かない場合

classの中に引数selfを、あえて書かないという試み。

class Calc():
    def minus(a,b):
        c=a-b
        print(c)
        return

Calc.minus(2,3) *クラスのメソッドに直接アクセスする。

-1              *実行された

res= Calc()
res.minus(2,3)  * インスタンスを作り、メソッドにアクセス。

↓以下のエラーメッセージ
TypeError              Traceback (most recent call last)
<ipython-input-41-ffe44836ebd0> in <module>
      1 res= Calc()
----> 2 res.minus(2,3)
TypeError: minus() takes 2 positional arguments but 3 were given

これのエラーは、minus関数は引数を2つ取るような仕様なのに、引数が3つ与えられている。

=>minusメソッドは、オブジェクト、a、bという3つの引数を取らなければいけないということです。

気づいたことを、お気軽に。
公開まで、やや時間がかかりまーす!