python闖關_Day07
阿新 • • 發佈:2019-01-12
第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')