1
class Base:
    def __init__(self):
        self.x = 4

class C1(Base):
    ...

class C2(Base):
    ...

obj1 = C1()
obj2 = C2()

obj1.x = 2

C1の「self.x」を変更すると、その単一クラスのすべてのインスタンスの「self.x」が自動的に更新される可能性があります...しかし、同じベースを使用してすべてのクラスを更新するにはどうすればよいですか?

4

3 に答える 3

0

あなたがやろうとしていることはうまくいきません。イニシャルx = 4はインスタンスではなくクラスに格納されますが、 などの代入はインスタンスに格納されobj1.x = 2ます。

本当にシングルトンを作成したい場合は、(ab)メタクラスを使用して、作成された各インスタンスが実際に同じものであることを確認してください。その方法の例については、この回答を参照してください。

于 2013-10-30T14:01:28.757 に答える