У меня возник вопрос о атрибуте класса в python.атрибут класса python
class base :
def __init__ (self):
pass
derived_val = 1
t1 = base()
t2 = base()
t2.derived_val +=1
t2.__class__.derived_val +=2
print t2.derived_val # its value is 2
print t2.__class__.derived_val # its value is 3
Результаты разные. Я также использую функцию id() для поиска t2.derived_val и t2. класс .derived_val иметь другой адрес памяти. Моя проблема является производным_value атрибутом класса. Почему в приведенном выше примере это отличается? Это потому, что экземпляр класса копирует свой собственный производный_val рядом с атрибутом класса?