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

装饰器01

时间:2018-04-24 17:31:58      阅读:149      评论:0      收藏:0      [点我收藏+]

标签:import   源代码   完成   text   sha   def   bsp   原来   ret   

##没有参数版的装饰器
##装饰器是在不动用原来的功能源代码加上一个功能,也不能调用原来的函数
#首先要引入需要的功能板块
import time
第三部也就是实现了新的功能:
def timer(timerr):
    def code()##第四步
        ##开始定时:sta_timer = time.time()
         sta_timer = time.time()
        ##然后函数的调用
        timerr()
         ##结束定时:sta_Timer = time.time()
        sta_Timer = time.time()
        ##然后打印
        print("ttimer2 zai zhe li:%s"%(sta_timer-sta_Timer))
    return code
##然后想要加入定时器新的功能的话需要在原来的的功能上加上定时器的函数time.sleep(3)完成了第二步:
##第⑤步:在需要加这个功能的函数上面加上装饰器的名字@timer
@timer##这一步就等于text1 = timer(text1)
##原本有的功能,第一步:
def text1():
    time.sleep(3)
    print("text1")

text1()
###如果需要参数的话
#装饰器
import time
def timer(func):
    def code(*args,**kwargs):
        timer_timer = time.time()
        func(*args,**kwargs)
        timeR_timer = time.time()
        print("jia shang le ding shi qi:%s"%(timer_timer-timeR_timer))
    return code
@timer
def text1():
    time.sleep(3)
    print("the is text1")
@timer
def text2(*args,**kwargs):
    time.sleep(3)
    print("the is text2")

text1()
text2()

 

装饰器01

标签:import   源代码   完成   text   sha   def   bsp   原来   ret   

原文地址:https://www.cnblogs.com/ArtisticMonk/p/8931106.html

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