6.
现有以下函数,利用装饰器为此函数加上认证功能,也就是只有用户名为'python', 密码为'123'才能调用此函数,否则不允许
def my_log(name):
print('%s欢迎登陆'%(name))
import functools def decorator(f): @functools.wraps(f) def wrapper(*arg,**kw): n = input('账号') m = input('密码') if n == 'python' and m == '123': return f(*arg,**kw) return wrapper @decorator def my_log(name): print('%s欢迎登陆'%(name)) my_log('python')
7.利用装饰器为函数加上统计执行时间的功能。
提示 time模块中的time()函数可以获取当前时间
import functools import time def decorator(f): @functools.wraps(f) def wrapper(*arg,**kw): bef = time.time() ret = f() aft = time.time() print('执行的时间是{}'.format(aft-bef)) return ret return wrapper @decorator def test(): print('runing....') time.sleep(1) test()
眼里长着阳光
笑里全是坦荡荡
浙公网安备 33010602011771号