O'Reilly logo
  • Jason Novinger thinks this is interesting:

The biggest shortcoming of @property is that the methods for an attribute can only be shared by subclasses. Unrelated classes can’t share the same implementation. However, Python also supports descriptors (see Item 31: “Use Descriptors for Reusable @property Methods”) that enable reusable property logic and many other use cases.


Cover of Effective Python: 59 Specific Ways to Write Better Python


This is how we do composition, I think.