def deco(func):
flag = False
def LoginCheck(*args, **kwargs):
nonlocal flag
i = 0
while not flag:
username = input("请输入用户名:")
password = input("请输入密码:")
if username == "admin" and password == "123":
flag = True
break
i += 1
if i >= 3:
print("登录失败,无法再登录!")
return
if not flag:
print("用户名或密码输入错误,你还有", 3 - i, "次机会!")
func(*args, **kwargs)
return LoginCheck
@deco
def Func1():
print("Func1被调用!")
Func1()
Func1()
编写装饰器,为多个函数加上登录认证功能,(用户有3次登录机会), 要求,如果登录成功了,后续就不用再登录了。
最新推荐文章于 2024-09-15 22:31:42 发布