###質問の概要
Pythonのselfに関して、少し疑問点が見つかりましたので、
質問させて頂きます。
###該当のソースコード
Python
1class Test: 2 def __init__(self): 3 self.a=1 4 def sample(self): 5 self.c=10 6 print(self.c) 7 def pri(): 8 print(self.c) 9 10test=Test() 11test.sample() 12print(test.a) 13#test.pri() #エラー 14#print(test.c) #エラー
###質問内容
上記のソースコードでsample関数内で、self.cという変数を新しく定義していると思います。
self.cという変数は、sample関数内では普通に使用できています。
ですが、他の関数から使用することは出来ないようです。
ここで質問したいのは、self.cと記述することに特別な意味があるのかということです。
例えば、sample関数の中に、ローカル変数としてcを定義するのと、
self.cとして定義するのとではどう違うのでしょうか?
_init_関数内で定義したself.aは他のメンバ関数でも共通して使えますが、
他の関数(sample関数)でself.cと定義することに意味はあるのでしょうか?
self.cとしても、cと定義した場合でもローカル変数と同じ扱いになっているような気がします。
この二つの定義の違いはあるのでしょうか?
ご教授頂ければ幸いです。
よろしくお願いします。
###補足情報(言語/FW/ツール等のバージョンなど)
Python3 Wandboxで実行
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/07/04 16:49
2017/07/05 16:18
2017/07/05 17:16