今回は前回までの続き、クラスの続きです。
メソッド
前回はクラスとインスタンスについて触れましたが、今回はメソッドについて触れていきます。
メソッドは端的に言うと、クラス内に作る関数です。
前回に引き続き、今回もストーリー仕立てで進めていきます。
勇者と賢者に初期設定を与えるメソッドを作ります。
# selfでインスタンスを定義します。 class Character: def set_status(self , set_job , set_HP , set_weapon): # 値を設定するメソッドを定義 self.job = set_job self.HP = set_HP self.weapon = set_weapon def print_status(self): #表示するためのメソッド print(self.job) print(self.HP) print(self.weapon) # yusyaがself自身になってインスタンスを作成します。 yusya = Character() yusya.set_status("ネオ勇者" , 120 , "鋼鉄の剣") # kenjaがself自身になってインスタンスを作成します。 kenja = Character() kenja.set_status("偉い賢者" , 90 , "癒し系の杖") # 表示するするメソッドを使ってみよう。 print("-------------") yusya.print_status() print("-------------") kenja.print_status() print("-------------")
- まずクラスを作ります。selfというのは、インスタンス自身のことを示しています。ここは、キャラクター設定のテンプレートなので、まだキャラクターは誕生していません。
- Character()でインスタンス化を行っております。つまり、ここでキャラクターが誕生しています。
- yusya.set_status("ネオ勇者" , 120 , "鋼鉄の剣")で勇者の、kenja.set_status("偉い賢者" , 90 , "癒し系の杖")で賢者のステータスを設定しました。
- print_statusは設定値をprintしてあげるメソッドなので、ここで表示をしています。
いかがでしょうか。
結構慣れるまでしんどいですよね。
次回は、これにひきつづきコンストラクタというものを紹介します。