用装饰器实现简单的登录

Posted wangliang666

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用装饰器实现简单的登录相关的知识,希望对你有一定的参考价值。

login_status = False
msg = ‘‘‘1.home
2.finance
3.book‘‘‘

def login(auth_type):
def func(fun):
def inner():
global login_status
if login_status == False:
username = input(‘username>>>‘)
passwd = input(‘passwd>>>‘)
if auth_type == ‘jingdong‘:
with open(‘passwd.txt‘,‘r‘) as f :
text = f.read().split(‘;‘)
if username == text[0] and passwd == text[1]:
print(‘welcome‘)
fun()
login_status = True
else:
print(‘wrong‘)
elif auth_type == ‘weicin‘:
with open(‘text.txt‘,‘r‘) as f :
if username == text[0] and passwd == text[1]:
print(‘welcome‘)
fun()
login_status = True
else:
print(‘wrong‘)
return inner
return func

@login(auth_type = ‘jingdong‘)
def home():
print(‘home‘)

@login(auth_type = ‘weixin‘)
def finance():
print(‘finance‘)

@login(auth_type = ‘jingdong‘)
def book():
print(‘book‘)




while True:
print(msg)
a = input(‘>>>‘)
if a == ‘1‘:
home()
elif a == ‘2‘:
finance()
elif a == ‘3‘:
book()


























































以上是关于用装饰器实现简单的登录的主要内容,如果未能解决你的问题,请参考以下文章

装饰器

装饰器实现用户验证登录

python装饰器实现用户密码认证(简单初形)

装饰器设计模式初探(Java实现)

python装饰器使用

python装饰器:实现登录账户三次失败,账户自动锁定