Pythonのクラスをわかりやすく解説

pythonのクラスをわかりやすくpython

言葉の定義を知るよりも「これが〜。そしてこっちのこれが〜」と理解してしまえばすんなり頭に入るはず。

ここでの解説はそんな感じのスタイルでいきます。

スポンサーリンク

インスタンス変数・インスタンスメソッド

言葉は画像の通り

インスタンス変数・メソッド

 

Tomyというインスタンスを作成。

インスタンス変数をそれぞれ与える(ここではTomyと18)。

インスタンス_Tomy

これでTomyインスタンス化しました。

 

インスタンス変数の参照

インスタンス名.インスタンス変数

で参照できます。

インスタンス変数の参照

 

インスタンスメソッドの利用

メソッドとは要は”関数”のことです。

それを踏まえ、インスタンスメソッドを使う方法は

インスタンス名.インスタンスメソッド(引数)

 

今回は引数なしのインスタンスメソッドaboutmeです。

インスタンスメソッド

 

インスタンスはいくらでも作成することができます。

Tomyに加え、Mikeというインスタンスを作りました。

  • インスタンスはクラスで定義された性質(インスタンス変数やメソッド)を持っている
  • インスタンスは複数作れる
  • 各インスタンスは、それぞれのインスタンス変数を持つ。すなわちそれぞれ個別のインスタンス変数の値を持つ(1843のように違った値を持つ)

 

selfについて

「self」はインスタンス自身を表すものです。

クラス内で定義される関数(=メソッド)の第一引数はselfを書きます。

 

クラス変数・クラスメソッド

MyFriendクラスにクラス変数とクラスメソッドを追加しました。

クラスメソッドとクラス変数追加

 

クラス変数

クラス変数の参照は

インスタンス名.クラス変数

また、

クラス名.クラス変数

でも参照できます。

クラス変数の参照

 

  • インスタンス変数→各インスタンスで独自の値
  • クラス変数→(そのクラスの)全てのインスタンスで共通

 

クラスメソッド

「@classmethod」をdefの上に書くだけ。

クラス名.クラスメソッド(引数)

で参照できます。

クラスメソッド参照

 

まとめ

最後にここまでの用語をまとめて掲載しまっす👇

 まとめ

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