Pyxel学習日記(5日目)

サプーさんの動画をみて、クラスについて勉強。

クラスとはオブジェクトの設計図。オブジェクトはインスタンスともいう。
以下は説明文

#クラスの定義
class SchoolReport: #SchoolReportはクラス名
    def function(self):#オブジェクト毎に違うデータをインスタンス変数という。この場合functionはメソッド名。seftはオブジェクト自身。
        x = 10 + 20 #defの中は普通の関数と同じ
        print('処理が終了')
        return x #戻り値がある時はreturnと書く
    #クラスがもっている関数をメソッドという

#特殊なメソッド
class SchoolReport: #SchoolReportはクラス名
    def __init__(self,student_name):#__init__はイニシャライザという。コンストラクタという時もある。インスタンス変数に値を代入する時に使う。初期化。
        self.student_name = student_name #self.の後はインスタンス変数名

sr = self.student_name('田中A') #オブジェクト
sr.student_name #student_nameはインスタンス変数名

実際動かしながら確認
↓これを実行したらターミナルに「イニシャライザの中です」と表示された

class SchoolReport:
    def __init__(self):
        print('イニシャライザの中です')

sr = SchoolReport()

↓これを実行したらターミナルに「田中A」と表示された

class SchoolReport:
    def __init__(self, name):
        self.student_name = name

sr = SchoolReport('田中A')
print(sr.student_name)