【Python】オブジェクト指向プログラミング vol.5 ~関数の追加~
関数をクラスに追加する
Playerクラスに能力値の平均値を算出する関数を作ってみます。能力値の平均値を戻り値にする関数をability_avgとしてPlayerクラスに追加します。
class Player: def __init__(self, name, team, position, attack, special, heart, technique, defense): self.name = name self.team = team self.position = position self.attack = attack self.special = special self.heart = heart self.technique = technique self.defense = defense def ability_avg(self): return (self.attack+self.special+self.heart+self.technique+self.defense) / 5 c = Player('クリステファン・ローディ', 'R・マドリード', 'FW', 409, 391, 310, 395, 193) ability = c.ability_avg() print('能力値の平均:{}'.format(ability))
このようにPythonではオブジェクトに属する関数を定義するとき、第一引数にselfというキーワードを書くことになっています。
上のコードを実行すると以下の結果が出力されます。
能力値の平均:339.6
selfはオブジェクト生成時に自動的に引数に入ってくるので引数として渡す必要はありません。
次回は簡単に継承とオーバーライドについて簡単にまとめます。