私は静的変数を作成するためにそれを読んでいます。メソッド内ではなくクラス定義内で宣言できます。しかし、変数の値を1つのインスタンスから変更すると、クラス変数とは異なる独自の変数が作成されるため、Javaの世界から見た場合、それはあまり「静的」ではないようです。 私は、変数の値が異なるインスタンス間で一貫していることを保証する方法を探しています。 StackOverflowの答えの1つが、私にとってうまくいかないコードの次の部分を示唆していました。Pythonのインスタンス間で静的変数の共通の値を維持する
class Test(object):
_i = 3
@property
def i(self):
return self._i
@i.setter
def i(self,val):
self._i = val
x1 = Test()
x2 = Test()
x1.i = 50
assert x2.i == x1.i # The example suggested no error here but it doesn't work for me
これを実現できるかどうかの例を説明できますか?
あなたは定数ヴァルがなく、Pythonに動的プロパティがあるので、あなたはこのオプションを考慮していないと考えていますか? –