class Desc(object):

    def __get__(self, obj, type=None):
        print('__get__')

def __set__(self, obj, value):
    print('__set__')


class A(object):
    desc = Desc()
a = A()
a.desc
a.desc = 2
SQLAlchemy фиксирует изменения объекта, измененного с помощью __dict__