装饰器实战
1、使用装饰器模拟用户登录过程
2、获取用户输入的用户名和密码
3、与数据库中的用户名和密码进行对比
4、正确时提示用户登录成功
5、错误时重新输入用户名和密码
USER_LIST = [
{'username': 'aaa', 'password': '111'},
{'username': 'bbb', 'password': '222'},
{'username': 'ccc', 'password': '333'}
]
def login(obj):
def wrapper():
username = input('请输入您的用户名:')
password = input('请输入您的密码:')
client = {'username': username, 'password': password}
if client in USER_LIST:
obj(username)
else:
print('您的用户名或密码错误!')
return wrapper()
return wrapper
@login
def index(username):
print(f'{username}登录成功')
index()