クラス継承
pythonではクラスを継承して、さらに便利に使用する事が可能です。
プログラミングの幅が広がりますので、是非覚えておきましょう。
まずは下記サンプルコードをご覧ください。
「list」を継承してクラスを作成し、値が追加された際にprint出力するようにしています。
# -*- coding: utf-8 -*- class TestExtends(list): def __init__(self): list.__init__(self) def append(self,value): list.append(self,value) print u"値が追加されました:" + str(value) if __name__ == "__main__": test = TestExtends() test.append("python") test.append("-") test.append("izm") print "===============" for i in test: print i
--実行結果--
値が追加されました:python 値が追加されました:- 値が追加されました:izm =============== python - izm
まずは3行目、クラス名の後の「()」の間に継承するスーパークラス名を記述します。
6行目ではコンストラクタ内にてスーパークラスの__init__関数を呼び出しており、続く9行目ではスーパークラスの「append」関数を利用しています。
10行目にて追加された値を「print文」で表示する独自の処理を加えている形です。
|
|
|
|
クラスの作成と継承を学びました。次はパッケージ化を学びましょう!
▶応用編:パッケージ化