class Desc:
    def __get__(self, obj, cls):
        return getattr(obj, '_val') if obj else None
    
    def __set__(self, obj, v):
        setattr(obj, '_val', v)

class C:
    a = Desc()

    def __init__(self) -> None:
        self.a = 100
        pass


c1 = C()
c2 = C()
print(C.a)
c1.a = 100
c2.a = 200
print(c1.a, c2.a)