クラスを作る際には,以下の要領でコードを作成します.
class クラス名:
def 関数名1(引数):
関数名1の処理
def 関数名2(引数):
関数名2の処理
上記の例では,関数は2つですが,幾つでも追加することが可能です.まずは,例としてsample_class という名前のクラスを作ってみます.
>>> class sample_class:
... def __init__(self, data1, data2):
... self.data1 = data1
... self.data2 = data2
... def method2(self):
... return(self.data1 + self.data2)
1つ目の関数 __init__ というのは特殊な関数で,クラスの初期化を行うコンストラクタと呼ばれます.クラスにデータを格納する関数としてコンストラクタを使用します.
クラスは,データの構造と計算ロジックを共に指定したものなので,実際にデータを中に格納したものをインスタンスと呼びます.
実際にインスタンスを生成するには,以下のようにします.
>>> sample_instance = sample_class(data1 = 2, data2 = 3)
これで,data1 に 2 が,data2 に 3 が格納されたインスタンス sample_instance の出来上がりです.コンストラクタの引数の self とは,クラス自身のことを指すので,指定は不要です.
中身のデータを取り出すには,ドット記号を使います.
>>> sample_instance.data1
2
自身の関数を使う場合も,ドット記号を使います.
>>> sample_instance.method2()
5
クラスにデータを格納した インスタンス を実際に使っていくことと,インスタンスの中身(データや計算のロジック)を取り出す場合にはドット記号を使います.
クラスが設計図で,インスタンスが設計図を基に作られたモノになります.厳密ではありませんが,データ分析をする場合には設計図というよりは データの構造 を指定したものがクラスだと考えるとわかりやすいです.
0 件のコメント :
コメントを投稿