装饰器实战


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()

results matching ""

    No results matching ""