python装饰器结构体:
def 函数装饰器名称(func):
def 内嵌函数(*args,**kwargs):
需要添加的新功能
return func(*args,**kwargs)
return 内嵌函数
用装饰器为系统的两个功能添加验证登陆的功能
def verify_permissions(func):
def wrapper(*args,**kwargs):
print("验证权限")
return func(*args,**kwargs)
return wrapper
@verify_permissions
def enter_background(loginId,pwd):
print(loginId,pwd)
print("进入后台系统....")
@verify_permissions
def delete_order(order_id):
print("删除%d订单..."%order_id)
enter_background("zs",123)
delete_order(101)
def verify_account(func):
def wrapper(*args,**kwargs):
print("验证账户")
return func(*args,**kwargs)
return wrapper
@verify_account
def deposit(money):
print("存款“,money)
@verify_account
def withdraw():
print("取钱")
return 10000
deposit(5000)
print(withdraw())
import time
def print_execute_time(func):
def wrapper(*args, **kwargs):
start_time=time.time()
result=func(*args,**kwargs)
execute_time=time.time()-start_time
print("执行时间是:",execute_time)
return result
return wrapper
class Student:
def __init__(self,name):
self.name=name
@print_execute_time
def study(self):
print("开始学习喽")
time.sleep(2)