1. 程式人生 > >編寫裝飾器, 為多個函式加上認證功能(使用者的賬戶密碼來源於檔案, 使用者有三次登入的機會), # 要求, 如果使用者登入成功了, 後續就不需要再次登入了.

編寫裝飾器, 為多個函式加上認證功能(使用者的賬戶密碼來源於檔案, 使用者有三次登入的機會), # 要求, 如果使用者登入成功了, 後續就不需要再次登入了.


# flag = False # 一開始沒有登入
#
# def login(): # 函式:對功能或者動作的封裝
# global flag
# username = input("請輸入你的使用者名稱:")
# password = input("請輸入你的密碼:")
#
# with open("userinfo",mode="r", encoding="utf-8") as f:
# for line in f:
# dic = eval(line.strip()) # {"username":"wusir1", "password":"sb"}
# if username == dic['username'] and password == dic['password']:
# print("登入成功")
# flag = True
# break
# else:
# print('登入失敗')
# flag = False
#
#
# def wrapper(fn):
# def inner(*args, **kwargs):
# count = 0
# while count < 3:
# if flag == True:
# ret = fn(*args, **kwargs)
# return ret
# else: # 沒登入
# login()
# count += 1
# return inner
#
# @wrapper
# def func():
# print("今天星期一. 你們啥時候睡覺啊")
#
#
# func()
# func()