02 装饰器与描述符协议
上一篇文章说明了普通函数实现的装饰器存在的问题。本文我们将着眼于之前阐述的最后一个问题,如何将装饰器应用到一个描述符上。
1. 描述符协议
有关 Python 的对象模型和底层设计原理推荐大家读一读《流畅的Python》,这里不会详细解释描述符是什么以及他们的工作原理。简而言之,描述符就是存在绑定行文的对象,即属性访问会被描述符协议实现的方法所覆盖。实现描述符协议的特殊方法包括 __get__(), __set__(), 和 __delete__()。如果任意一中方法在一个对象中被定义,就可以说该对象是一个描述符**

