Pythonのオブジェクト志向プログラムについて,備忘録を残しておきます(後でものすごいページ数の書籍から該当箇所を探し出すのは嫌なので).

で,先ずは非常に簡単なプログラムを以下に.

[python]
>>> class Times:
... def __init__(self, value=10):
... self.data = value
... def times(self, a):
... self.data *= a
... return self.data
...
>>> tt = Times(101)
>>> tt.times(2)
202
>>> tt.times(5)
1010
>>> tt.times(0.1)
101.0
>>> tt.data
101.0
>>>
[/python]

ポイントはいくつか.

  • コンストラクタは__init__の関数名で書く:[2行目]

  • 関数の最初の引数は必ずself(自分自身のクラスを表す):[2, 4行目]

  • クラス内の変数はself.***の形でアクセス[3, 5行目](ただし,グローバルなので外からもアクセス可:[15行目].プライベートのような使い方もできるが基本はグローバル)


継承,デストラクタについてはまた別の記事で.