данные Python и дескрипторы не данных
В соответствии сPython»документация,
Дескрипторы данных с__set__()
а также__get__()
определенные всегда переопределяют переопределение в словаре экземпляра.
У меня нет проблем с пониманием этого предложения, но может ли кто-нибудь объяснить мне, почему такое правило действует? В конце концов, если я хочу переопределить атрибут в словаре экземпляра, мне уже нужно это сделатьявно (inst.__dict__["attr"] = val
как наивныйinst.attr = val
назвал бы дескриптор__set__
метод, который (обычно) не переопределяет атрибут в словаре экземпляра.
редактировать: просто чтобы прояснить, я понимаю, что происходит, мой вопрос о том, почему такое правило было введено в действие.