私はPythonを初めて使うので、これは愚かな質問かもしれません。別のクラスメソッドで_init_ defined属性を変更するPython
Class A:
def _init_(self):
self.var1 = 2
def update(self):
self.var1 = 3
しかし、常にPyCharmでエラーになって: は、私がこれを書いた場合は、var1はのinit外で定義される属性。どうして?
私はPythonを初めて使うので、これは愚かな質問かもしれません。別のクラスメソッドで_init_ defined属性を変更するPython
Class A:
def _init_(self):
self.var1 = 2
def update(self):
self.var1 = 3
しかし、常にPyCharmでエラーになって: は、私がこれを書いた場合は、var1はのinit外で定義される属性。どうして?
エラーが表示されるのは誤植によるものです。 init()と同様の関数を書くときに、 '_'を二重のアンダースコアで置き換えてください。正しいコードは次のとおりです。
class A:
def __init__(self):
self.var1 = 3
def update(self):
self.var1 = 4
1.インデントはPythonで重要です。 2.タイプミスの質問は、そのように閉じなければなりません。 – jonrsharpe
私は応答プラットフォームを初めて使い、間違っていた場所を助けたいと考えています。乾杯! – Ranganathan
「 '_init_'!= '__init __' 'です。 @ S.R。それは実行されますが、OPが期待するようにはうまくいかないでしょう。 – jonrsharpe
@jonrsharpe - ニースキャッチ!彼らが継承を使用する場合、問題になります –