クラス継承
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文」で表示する独自の処理を加えている形です。
|
|
|
|
|
クラスの作成と継承を学びました。次はパッケージ化を学びましょう!
▶応用編:パッケージ化