プログラミング言語初心者はスクリプト言語オススメ!

プログラミング初心者にはスクリプト言語が平易だし需要もありオススメです。

Pythonのクラスで個々の成績の平均データを扱う

Pythonのクラスはオブジェクトにより個々のインスタンスを扱う事ができます。
成績表を個々ののデータを扱ってみましょう。

【コード】


class SchoolReport : #インスタンス変数
def __init__(self,student_name,
math_score, jp_score,en_score,):
#インスタンス化で呼び出される
#selfはオブジェクト自身
self.student_name = student_name
self.math_score = math_score
self.jp_score = jp_score
self.en_score = en_score

def calc_avg_score(self): #インスタンス自身のスコアの平均点を出す
sum_score = (self.math_score
+ self.jp_score
+ self.en_score)
avg_score = sum_score / 3
return avg_score

sr_a = SchoolReport('田中A',100,50,50) #渡したい値
avg_a = sr_a.calc_avg_score()
print(f'Aサンの平均点: {avg_a}') #student nameにアクセス

sr_b = SchoolReport('鈴木B',100,80,50) #渡したい値
avg_b = sr_b.calc_avg_score()
print(f'Bサンの平均点: {avg_b}') #student nameにアクセス

sr_c = SchoolReport('中村C',100,100,50) #渡したい値
avg_c = sr_c.calc_avg_score()
print(f'Cサンの平均点: {avg_c}') #student nameにアクセス


【解説】

田中さんの平均点を出したい場合はsr_a = SchoolReport('田中A',100,50,50)でこの田中のSchoolReportがdef calc_avg_score(self): のselfに代入されます。

そして、平均点の計算で100はself.math_score、50はself.jp_score、50はself.en_scoreとなり合計を3で割り算して結果をreturn avg_scoreで戻り値として出します。

print(f'Aサンの平均点: {avg_a}')でAの平均が結果として出ます。
他のも個々に出ます。


【結論】

クラスはいくつデータがあろうともインスタンス変数に値を指定すればそれをオブジェクトに入れて処理するだけですから人ごとに違ったデータを扱う時に便利です。





取材やお仕事紹介などはこちらからお気軽にご連絡下さい。
ysa7825@gmail.com