python定义函数装饰器和类装饰器

287 阅读1分钟

直接上最简化的demo代码,7个装饰器的例子,理解函数装饰器类装饰器类中方法装饰器

image.png

第一种函数装饰器,嵌套函数 返回 func

例子1:

image.png

例子2:

image.png

例子3:

image.png

第二种函数装饰器,调用func()

例4,例5原函数的参数都是写在里层的函数上的 例子4 image.png

例子5

image.png

类装饰器

特点

  • 装饰后的对象,其实是类的实例,是通过实例加(), 调了call方法,实现的装饰
  • 写法固定简单,但是 好像不能给装饰器加 参数。 说的这个 @***(argr)

image.png

类的方法装饰

特点

  • 相比于函数装饰器,类中的方法可以装饰的更复杂(可以用类中的其他方法)

image.png

装饰器举例,模拟flask的路由装饰器功能

image.png