第8章 闭包函数
闭包函数和装饰器之前是比较懵的,老师这次讲得很清楚了。
1 编写函数,(函数执行的时间是随机的)
import random import time def mytime(): time.sleep(random.randint(2,3)) #停顿2或3秒再运行 print(random.randint(2,3)) mytime()
2 编写装饰器,为函数加上统计时间的功能
import time def timmer(func): def wrapper(*args,**kwargs): start= time.time() func(*args,**kwargs) stop = time.time() print('执行时间是%s'%(stop-start)) return wrapper @timmer def exe(): print('程序运行的时间') exe()
3 编写装饰器,为函数加上认证的功能
def auth(func): def wrapper(*args,**kwargs): name = input('请输入你的名字>>: ').strip() password = input('请输入你的密码>>: ').strip() if name == 'zjl' and password == '123': func(*args,**kwargs) return wrapper @auth def my_log(name): print('%s欢迎登陆'%(name)) my_log('zjl')