Python-Daten und Nicht-Daten-Deskriptoren

GemäßPythons Dokumentation,

Datenbeschreibungen mit__set__() und__get__() Defined überschreibt immer eine Neudefinition in einem Instanzwörterbuch.

Ich habe kein Problem damit, diesen Satz zu verstehen, aber kann mir jemand erklären, warum eine solche Regel gilt? Wenn ich ein Attribut in einem Instanzwörterbuch überschreiben möchte, muss ich das schon tunausdrücklich (inst.__dict__["attr"] = val), als naivinst.attr = val würde den Deskriptor anrufen__set__ Methode, die das Attribut im Instanzwörterbuch (normalerweise) nicht überschreibt.

edit: nur um es klar zu machen, ich verstehe was passiert, meine frage ist, warum eine solche regel eingeführt wurde.

Antworten auf die Frage(1)

Ihre Antwort auf die Frage