码迷,mamicode.com
首页 > 其他好文 > 详细

使用类来写装饰器

时间:2018-04-07 12:48:34      阅读:113      评论:0      收藏:0      [点我收藏+]

标签:就是   start   div   plain   mini   res   __call__   AC   use   

前两天发现了装饰器可以直接使用类来写,分享一下,需要用类里面的__call__方法,__call__方法就是可以把这个实例当成一个函数来调用,如果正常使用类里面的方法的话,实例方法要先实例化类,然后才能调用,静态方法、类方法则需要用类名或者实例化之后的对象来调用,而实例化之后的这个对象,是不能被调用的,__call__方法就是把这个实例变成一个可以调用的对象,也就是说实例化之后,这个对象就可以和一个普通函数一样被调用。

示例代码如下:

运行结果:

理解了上面的之后,就可以使用class来写一个装饰器了,计算程序的运行时间,当然思想和以前用函数写装饰器是一样的

运行结果:

 

使用类来写装饰器

标签:就是   start   div   plain   mini   res   __call__   AC   use   

原文地址:https://www.cnblogs.com/chunyanxu/p/8732659.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!