Я бы хотел изменить полосу переменной класса класса, чтобы создание объекта было выполнено с помощью Bar2 вместо bar1
class A(object):
def __new__(cls, foo):
obj = super(A, cls).__new__(cls)
return obj
class B(A):
bar = "bar1"
def __new__(cls, foo=bar):
print("actual",foo)
rm = super().__new__(cls,foo=foo)
return rm
if __name__ == '__main__':
B.bar = 'bar2'
b = B()
print(b.bar)
< /code>
Когда я запускаю код, я получаю: < /p>
actual bar1
bar2
< /code>
, тогда как я ожидаю: < /p>
actual bar2
bar2
Подробнее здесь: https://stackoverflow.com/questions/793 ... before-new