灵虚御风
醉饮千觞不知愁,忘川来生空余恨!

导航

 
""""""
"""1.装饰器升级版"""

import time
def index():
time.sleep(3)
print('澳门最大线上赌场开业啦 性感tank在线发牌!')
return 'index'
# res1 = index()

def login(name):
time.sleep(1)
print('%s is sb'%name)
return 'login'
# res = login('egon')

def outter(func): # func = 最原始的login函数的内存地址
def get_time(*args,**kwargs): # args = ('egon',) kwargs = {}
start = time.time()
res = func(*args,**kwargs) # 最原始的login函数的内存地址() 直接调用 func('egon')
end = time.time()
print('func run time:%s'%(end-start))
return res
return get_time

login = outter(login) # outter(最原始的login函数的内存地址)
ret = login('egon')
"""
egon is sb
func run time:1.000685453414917

"""
"""
函数参数的问题
无参函数和有参函数都可以直接调用???
函数可以接收任意数量的参数
"""

"""2.装饰器语法糖"""
import time


def outer(func): # func = 最原始的index函数的内存地址
def get_time(*args, **kwargs):
start = time.time()
res = func(*args, **kwargs) # 最原始的login函数的内存地址() 直接调用 func('egon')
end = time.time()
print('func run time:%s'%(end-start))
return res
return get_time
# login = outter(login) # outter(最原始的login函数的内存地址)
# index = outter(index)
# home = outter(home)

@outer # index = outter(index) outter(最原始的index的函数的内存地址)
def index():
time.sleep(3)
print('澳门最大线上赌场开业啦 性感tank在线发牌!')
return 'index'
# res1 = index()




@outer # login = outter(login)
def login(name):
time.sleep(1)
print('%s is sb'%name)
return 'login'
# res = login('egon')

@outter # home = outter(home)
def home(*args,**kwargs):
time.sleep(1)
return 'home'


index()
login('egon')
home()


"""
语法糖在书写的时候应该与被装饰对象紧紧挨着
两者之间不要有空格

"""
posted on 2022-03-24 14:51  没有如果,只看将来  阅读(9)  评论(0编辑  收藏  举报