В Python вы можете добавлять новые переменные экземпляра к экземпляру класса во время выполнения, как это ...
>> class Foo:
>> def __init__(self, bar):
>> self.bar = bar
>>
>> f = Foo()
>> setattr(f, "baz", "spam")
>> f.baz
"spam"
... но это влияет только на экземпляр f
, но не класс foo
.
>> x = Foo()
>> x.baz
AttributeError: 'Foo' object has no attribute 'baz'
Есть ли способ добавить новую переменную экземпляра baz
в класс Foo
, чтобы все новые экземпляры этого класса имели новую переменную?