log_status = False
f = 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

功能:不同的页面需要不同的账号来登陆;登陆后返回等操作后不需要二次登陆。

动态页面的登陆——装饰器应用<代码>的更多相关文章

  1. tornado登陆装饰器

    tornado作为鼎鼎大名的web异步框架,用来作为高性能服务器以及web框架都是首选.自从python3.4加入了asyncio原生协程后,tornado的最新版本也开始使用了原生的协程.定义协程函 ...

  2. (26)基于cookie的登陆认证(写入cookie、删除cookie、登陆后所有域下的网页都可访问、登陆成功跳转至用户开始访问的页面、使用装饰器完成所有页面的登陆认证)

    获取cookie request.COOKIES['key'] request.get_signed_cookie(key, default=RAISE_ERROR, salt='', max_age ...

  3. 动态页面,登陆,注册,留言 JSP

    登陆页 主要使用html表单,javascript验证注册信息 <%@ page language="java" contentType="text/html; c ...

  4. react-native 中使用redux 优化 Connect 使用装饰器简化代码报错

    报错信息 error: bundling failed: Error: The 'decorators' plugin requires a 'decoratorsBeforeExport' opti ...

  5. Python装饰器小代码

    # coding=utf-8import timedef outer(fun): def inner(): start = time.time() fun() runtime = time.time( ...

  6. python装饰器精髓代码

    #!/usr/bin/env python #-*- coding:utf-8 -*- import time def foo(func): def inner(): print('fs...') f ...

  7. Django(十六)基于模板的登录案例:登录装饰器、csrf攻击方式及防护、ajax的Post 的csrf开启写法、生成验证码、加验证码登录、反向解析+传参

    一.csrf攻击 1.1 csrf攻击(跨站请求伪造) [csrf攻击即]:通过第3方网站,伪造请求(前提条件是你已经登录正常网站,并保存了session或cookie登录信息且没有退出),第三方网站 ...

  8. python 装饰器的理解

    一. 装饰器是一个很著名的设计模式,经常被用于有切面需求的场景,较为经典的有插入日志.性能测试.事务处理等.装饰器是解决这类问题的绝佳设计,有了装饰器,我们就可以抽离出大量函数中与函数功能本身无关的雷 ...

  9. python描述符(descriptor)、属性(property)、函数(类)装饰器(decorator )原理实例详解

     1.前言 Python的描述符是接触到Python核心编程中一个比较难以理解的内容,自己在学习的过程中也遇到过很多的疑惑,通过google和阅读源码,现将自己的理解和心得记录下来,也为正在为了该问题 ...

随机推荐

  1. POJ 3318 Matrix Multiplication(随机算法)

    题目链接 随机算法使劲水...srand((unsigned)time(0))比srand(NULL)靠谱很多,可能是更加随机. #include <cstdio> #include &l ...

  2. shell用到的命令

    一.shift 参数左移 until [ $# -eq 0 ]doecho "第一个参数为: $1 参数个数为: $#"shiftdone 二.wc 该命令用于统计指定文件中的字节 ...

  3. Microsoft.AlphaImageLoader滤镜讲解

    Microsoft.AlphaImageLoader是IE滤镜的一种,其主要作用就是对图片进行透明处理.虽然FireFox和IE7以上的IE浏览器已经支持透明的PNG图片,但是就IE5-IE6而言还是 ...

  4. 使用 Git 来管理 Xcode 中的代码片段

    使用 Git 来管理 Xcode 中的代码片段 代码片段介绍 xcode4 引入了一个新 feature: code snippets,在整个界面的右下角,可以通过快捷键:cmd + ctrl + o ...

  5. https资料

    1.HTTPS的七个误解   http://blog.httpwatch.com/2011/01/28/top-7-myths-about-https/ 中文 http://www.cnblogs.c ...

  6. 几个与时间相关的php的函数

    这些函数很常用,但是不用的话,像我这样的初学者放下就记不清了,这时最好的办法就是去查文档,写一下印象会更深一些 1.时间戳函数strtotime():一个就是string to time(我自己这样理 ...

  7. shenyi 语录

    [讲师]沈逸(65480539) 2016-06-08 14:58:42   会centos 转redhat是分分钟的事 [讲师]沈逸(65480539) 2016-06-08 14:58:54 查看 ...

  8. elFinder的使用并整合ckeditor

    具体实现访问: 白乔大神资源:https://github.com/bluejoe2008/elfinder-2.x-servlet 本人oschina的库:https://git.oschina.n ...

  9. 【液晶模块系列基础视频】5.2.X-GUI字体驱动2

    ============================= 技术论坛:http://www.eeschool.org 博客地址:http://xiaomagee.cnblogs.com 官方网店:ht ...

  10. HRBUST 1326 循环找父节点神术

    题意 给出一个图 给出a点到每个点的路径 最后经过的除这个点本身以外的点 现在把a点改为b点 让求出按上面那种方式 把除b之外的点对应的点列出 ...算了我描述题意得能力好差...这个锅还是给出题的吧 ...