Dom Grigonis wrote at 2023-11-15 18:44 +0200: >So there is a method __set_name__ which is called on class creation. > >The functionality that I am interested in is not retrieving name, but the fact >that it also receives `owner` argument. > >Thus, allowing simulation of bound class method. > >I was wandering if there is an equivalent functionality of attribute to >receive `instance` argument on instance creation.
As PEP 487 describes, `__set_name__` essentially targets descriptors. It is there to inform a descriptor about the name it is used for in a class (and the class itself). There is no other (easy) way to allow a descriptor to learn about this name. If a descriptor is accessed via an instance, the descriptor (protocol) methods get the instance as parameter. Note that descriptors are stored in the class: they must not store instance specific information in their attributes. Therefore, a method informing an descriptor about instance creation would not help: it cannot do anything with it. -- https://mail.python.org/mailman/listinfo/python-list