python基础学习1-装饰器在登陆模块应用
LOGIN_USER ={"islogin":False}
def outer(func):
def inner(*args,**kwargs):
if LOGIN_USER["islogin"]:
r=func()
return r
else:
print("请先登录")
return inner
def login(user,pwd):
if user=="Alex" and pwd =="123":
LOGIN_USER["islogin"]=True \
LOGIN_USER["username"]=user
def manager(): #未调用装饰器 需在函数内部 判断是否登陆成功
if LOGIN_USER["islogin"]:
print("欢迎登陆%s" %LOGIN_USER["username"])
else:
print("请先登录")
@outer
def order(): #调用装饰器来判断 用户是否已经成功登陆
print("欢迎登陆%s" %LOGIN_USER["username"])
@outer
def changepwd():#调用装饰器来判断 用户是否已经成功登陆
print("欢迎登陆%s" %LOGIN_USER["username"])
def main():
while True:
print("1-管理界面")
print("2-订单界面")
print("3-修改密码界面")
t = input("请输入需要进人的界面")
user=input("请输入用户名")
pwd =input("请输入密码")
login(user,pwd)
if t=="1":
manager()
elif t=="2":
order()
else:
changepwd()
#主函数调用入口
main()
python基础学习1-装饰器在登陆模块应用的更多相关文章
- python基础-内置装饰器classmethod和staticmethod
面向对象编程之classmethod和staticmethod classmethod 和 staticmethod都是python内置的装饰器 classmethod 的作用:给在类内部定义的方法装 ...
- python基础5之装饰器
内容概要: 一.装饰器前期知识储备 1.python解释函数代码过程: python解释器从上往下顺序解释代码,碰到函数的定义代码块不会立即执行它,而是将其放在内存中,等到该函数被调用时,才执行其内部 ...
- python基础篇_004_装饰器函数
python装饰器函数 1.装饰器函数引导 功能:计算函数执行时长 import time """ 方式一: 函数首位添加时间,差值就是函数执行时间 缺点:每个函数都要加 ...
- Python基础-迭代器&生成器&装饰器
本节内容 迭代器&生成器 装饰器 Json & pickle 数据序列化 软件目录结构规范 作业:ATM项目开发 1.列表生成式,迭代器&生成器 列表生成式 我现在有个需求,看 ...
- python基础-面向对象(装饰器)
属性: @property @method_name.setter @method_name.deleter 三个标签都是放在方法的上面来使用,且方法名要和后续使用的 变量名字相一 ...
- python基础-5.2装饰器
1.了解装饰器前准备 #### 第一波 #### def foo(): print 'foo' foo #表示是函数,仅指向了函数的地址,为执行 foo() #表示执行foo函数 #### 第二波 # ...
- python基础之内置装饰器
装饰器 简介 功能与格式 内置装饰器 @classmethod @propertry @staticmethod 其它 ---------------------------------------- ...
- python基础--闭包、装饰器
装饰器的详细使用 (1)小知识点补充 在这里我们先学一个简单的知识点. li = ['alex', '银角', '女神', 'egon', '太白'] for i in enumerate(li): ...
- 【笔记】Python基础五:装饰器
一,什么是装饰器 本质就是函数,功能是为其他函数添加附加功能 原则: 1,不修改被修饰函数的源代码 2,不修改被修饰函数的调用方式 例子: import time def timmer(func): ...
随机推荐
- UITableView中cell点击的绚丽动画效果
UITableView中cell点击的绚丽动画效果 本人视频教程系类 iOS中CALayer的使用 效果图: 源码: YouXianMingCell.h 与 YouXianMingCell.m / ...
- 在虚拟机里安装linux(centos 6.5)系统
菜鸟一枚,也是接触linux系统没多长时间,前一阵子网上说有一个高级数据库工程师,因为rm -rf / 命令干掉了数据库-(nb),居然还跑路了!厉害了我的哥!也是闲的我蛋疼,在虚拟机里试了一批,本来 ...
- Ubunt16.04下安装PHP7+Nginx+MySQL
本文通过Ubuntu PPA来安装PHP7. 1.添加PPA $ sudo apt-get install python-software-properties software-properti ...
- 笔记本无密码连接wifi
用手机可以用wifi万能钥匙破解wifi,就想找电脑版的wifi万能钥匙,然并卵. 就去寻找各种办法,最后找了个巧, 用手机下载wifi万能钥匙连接,并且使用数据线连接上笔记本. 然后手机设置中找到开 ...
- Memcahce和Redis比较
一.Memcache 1. memecache 把数据全部存在内存之中,断电后会挂掉,数据不能超过内存大小redis有部份存在硬盘上,这样能保证数据的持久性. 2. Memcache ...
- html操作
HTML(hyper text markup language): 超文本标记语言,标准通用标记语言下的一个应用. 超文本就是指页面内可以包含图片.连接.音乐.程序等非文字元素. 超文本标记语言的结构 ...
- Linux 下安装配置 JDK7 配置环境(debian 7)
自从从Oracle收购Sun近三年来,已经有很多变化.早在8月,甲骨文将“Operating System Distributor License for Java”许可证终结,这意味着第三方将不可以 ...
- BZOJ4891:[TJOI2017]龙舟(Pollard-Rho,exgcd)
Description 加里敦大学有一个龙舟队,龙舟队有n支队伍,每只队伍有m个划手,龙舟比赛是一个集体项目,和每个人的能力息息相关,但由于龙舟讲究配合,所以评价队伍的能力的是一个值c = (b1*b ...
- python-一个小爬虫,爬取图片
import re import urllib.request # 爬取网页 def getHtml(url): page=urllib.request.urlopen(url) html=page. ...
- TensorFlow函数(九)tf.add_to_collection()、tf.get_collection() 和 tf.add_n()
tf.add_to_collection(name, value) 此函数将元素添加到列表中 参数: name:列表名.如果不存在,创建一个新的列表 value:元素 tf.get_collectio ...