ごだいぶろぐ 絶対大丈夫じゃないSEのぼやき

頭が封印解除しているシステムエンジニアのブログです。カードキャプターさくら クリアカード編の感想記事を定期更新中

【Python】クラスにおけるメソッドとインスタンスの意味を勉強する (º﹃º )

スポンサーリンク

 
この記事では以下の内容について勉強します
 Pythonにおけるクラス関連の用語や意味など 


経緯

ひょんなことから学生の頃から嫌いだったプログラミングを、社会人になって再度勉強することになりました。その辺の経緯はまたの機会に…1からプログラミングの基礎を勉強し直すにあたり「クラス」の考え方あたりで躓いたので、理解を深めるために自分の言葉で文字に起こして復習します。
 
 

まずは用語から

書籍などでも「クラス」の分野辺りからは「インスタンス変数〇〇に対し、△△メソッドを呼び出しそのメソッドを~」等と分かりづらい用語で僕らにマウントを取ってくる。あなた達はいつもそうね。
 
ということで用語から復習していきます。
 
 
メソッドって?
クラスが持つ関数のこと。通常の関数と同様defで表記して()に引数を与え、後述するインスタンス生成時に値を渡すことができる。
 
 
インスタンスって?

クラス内の関数や変数を使用する際に生成するもの。所謂ひな型でしかないクラスに、実データを与えて実体化したもの。1つのクラスに対してインスタンスは複数生成することができ、それぞれの別々のデータをもつことになる。

 

以下、ピカチュウというひな型に具体的なわざ(実データ)を覚えさせることで、戦闘で使える様々なピカチュウ(インスタンス)が作れる。

 

class ピカチュウ:

 def 使える技(self,わざ1,わざ2)

  print(このピカチュウが使えるのは、わざ1,わざ2)

 

特殊技ピカチュウ = ピカチュウ() ←インスタンス生成

特殊技ピカチュウ.使えるわざ(でんきショック,10まんボルト) 
 

物理技ピカチュウ = ピカチュウ() ←インスタンス生成

物理技ピカチュウ.使えるわざ(アイアンテール,たたきつける) 
 

嫌われるピカチュウ = ピカチュウ() ←インスタンス生成

嫌われるピカチュウ.使えるわざ(かげぶんしん,どくどく) 
 
 

コメント

詳しい人に説明してもらってもインターネッツで調べても分からないことがある場合は、自分の言葉でアウトプットするのことが大切なんだなあと思う今日この頃。正しくインプットできているかは別のお話し。
 
 

今日の一言

うちのボスが派遣のSEさん達に週次で詳細な作業報告をすることを命じていた。イマサラかよ。この試みに対しては大賛成だけど、ちゃんとフィードバックもしてあげないとかわいそう。かと言って優しくしすぎると調子に乗る、キツく当たりすぎても拗ねる。エンジニアのコントロールは難しい。