В примере ниже меняется атрибут класса, а как мне создать дескриптор на атрибут экземпляра? Или так дескрипторы не применяются. (з.ы. - хороший код лучше пояснений)
class Descriptor: def __get__(self, obj, obj_type): print("GET! ", end="") return self.obj def __set__(self, obj, value): self.obj = value print("SET!") def __delete__(self, obj): print("DELETE!") del self.obj class Class: attr1 = Descriptor() def __init__(self): self.attr2 = Descriptor() instance1 = Class() instance2 = Class() instance1.attr1 = "11" # SET! print(instance1.attr1) # GET! 11 instance2.attr1 = 21 # SET! print(instance1.attr1) # GET! 21 print(instance2.attr1) # GET! 21 - атрибут класса изменился и у всех экземпляров как и должно быть он един instance2.attr2 = 100 # тут дескриптор не вызывается print(instance2.attr2) # 100