首页 > 代码库 > 动态页面的登陆——装饰器应用<代码>
动态页面的登陆——装饰器应用<代码>
log_status = Falsef = open("info", "r", encoding="utf8")source = f.read()source = eval(source)username = ""def info_match(f_para_info): username = input("type your ID:") password = int(input("type your password:")) global source if username == source[f_para_info]["name"] and password == source[f_para_info]["password"]: print("login successful") global log_status log_status = True else: print("login failed")def para_decorator(f_para_pd): def decorator(f_para_dec): def func(): if log_status == True: global source sf = source[f_para_pd]["name"] print("welcome user {kk}".format(kk=sf)) f_para_dec() if log_status == False: if f_para_pd == "jingdong": info_match(f_para_pd) f_para_dec() elif f_para_pd == "weixin": info_match(f_para_pd) f_para_dec() elif f_para_pd == "qq": info_match(f_para_pd) f_para_dec() return func return decorator@para_decorator("jingdong") # homepage=para_decorator("jingdong")(homepage)def homepage(): print("welcome to home...")@para_decorator("weixin")def finance_page(): print("welcome to finance")@para_decorator("qq")def bookstore(): print("enjoy to the sea of knowledge")print("welcome to jd.com".center(60,"*"))while True: print(‘‘‘ 1.homepage (账号:ccc 密码:123) 2.finance_page(账号:gaga 密码:456) 3.bookstore(账号:xiaomu 密码:789) 4.quit to jd ‘‘‘ ) switch = int(input("switch to ...")) if switch == 1: homepage() elif switch == 2: finance_page() elif switch == 3: bookstore() elif switch == 4: break
功能:不同的页面需要不同的账号来登陆;登陆后返回等操作后不需要二次登陆。
动态页面的登陆——装饰器应用<代码>
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。