>>Delta

private変数とstaticなメソッドの作り方(Python)

2008年8月15日

private変数とstaticなメソッドの作り方(Python)

Pythonでprivate変数ってどうやって定義すんのかなーと思って調べたら

しかし、pythonにはこのデータのカプセル化という概念はない。すべてのデータが自由にアクセスできる。これについてテキストでは“みんな大人なんだから”ということで、「デバックの際にはアクセスできることが有効であるし、自由にアクセスできるからといって、アクセスするプログラムを作らなければならないわけではない。アクセスしないようにプログラムを作ればいい。みんな大人なんだから。」と逃げている(と思う)。

と書いてあって思わず吹き出してしまった(笑)。そういうわけで、private変数というのは無いらしい。

あともう一つ。staticなメソッドの書き方はPython : static method & class methodに書いてあった。

class myclass:
	def theMethod():
		return True
	
	theMethod = staticmethod(theMethod)

メソッドを書いた後に、staticmethodメソッドで自分自身を上書きするとstaticになるそうです。staticなメソッドはどのインスタンスにも属さないので引数のselfは必要ありません。メンバ変数は何もしなくても普通に クラス名.変数名 でアクセスし放題ですね。大人って素敵だ。

追記(2008-08-16):__変数名でprivateになるらしい。

投稿者 CASPAR003
投稿時刻 21:42
カテゴリー Shade
コメント 0 件
トラックバック 0 件
記事へのリンク http://www.caspar003.info/delta/archive/2008/08/15/2142.html
コメント
投稿者
コメント
トラックバック
  • トラックバック

ブログ情報

カレンダー
2018年2月
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28
最近のエントリー
最近のコメント
コメントを頂いたエントリー
コメントをくださった方一覧
コピー用紙の裏表
でった☆
CASPAR003
あのー
CASPAR003
amumo
CASPAR003
mariko
kazu
お仕事で青ざめた話
iun
iun
CASPAR003
AcrobatでPDFの一括印刷
Caesar
CASPAR003
Shadeのレンダラー仕様メモ
iun
CASPAR003
ブログ同盟本 C87 3日目 東S-04b
CON$
CASPAR003
Ca3 Post_Effector 2.0
sisioumaru
CASPAR003
sisioumaru
CASPAR003
Shade15について雑感
iun
CASPAR003
iun
色について
iun
CASPAR003
Lv67
iun
CASPAR003
雪まつり行ってきたよ
iun
CASPAR003