python如何实现不用装饰器实现登陆器小程序
作者:Iceberg_710815 发布时间:2022-07-02 15:52:14
标签:python,装饰,登陆,小程序
这篇文章主要介绍了python如何实现不用装饰器实现登陆器小程序,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
下面代码演示了不使用装饰器实现用户登陆功能的小程序,在python3.x下可正常运行
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
Created on Tue Nov 26 15:26:58 2019
@author: root
"""
def menu():
print('choice'.center(50,'-'))
msg = '''
1. home
2. finance
3. book
4. exit
'''
print(msg)
print("".center(50,'-'))
def login(login_flat,choice):
if not login_flat:
while True:
username = str(input("username:"))
password = str(input("password:"))
if choice == '1':
home()
with open('jingdong.txt','r') as f1:
for line in f1:
element = line.split(" ",1)
print(element[0])
print(element[1])
if username.strip() == element[0].strip() and password.strip() == element[1].strip():
print("log in successful!")
return True
print("failed to log in!,try it again!")
elif choice == '2':
finance()
with open('weixin.txt','r') as f2:
for line in f1:
element = line.split(" ",1)
if username.strip() == element[0].strip() and password.strip() == element[1].strip():
print("log in successful!")
return True
print("failed to log in!,try it again!")
elif choice == '3':
book()
with open('jingdong.txt','r') as f3:
for line in f3:
element = line.split(" ",1)
if username.strip() == element[0].strip() and password.strip() == element[1].strip():
print("log in successful!")
return True
print("failed to log in!,try it again!")
else:
print("You have logged in before!")
return True
#@login(login_flat,choice)
def home():
print("home.....")
#@login(login_flat,choice)
def finance():
print("finance.....")
#@login(login_flat,choice)
def book():
print("book.....")
login_flag = False
while True:
menu()
choice = input("your choice:")
if choice == '1':
login_flag = login(login_flag,choice)
elif choice == '2':
login_flag = login(login_flag,choice)
elif choice == '3':
login_flag = login(login_flag,choice)
elif choice == '4':
print('bye-bye')
break
else:
print("wrong input ,try it again!")
来源:https://www.cnblogs.com/iceberg710815/p/11936947.html


猜你喜欢
- 在程序运行的过程中,所有的变量都是在内存中,比如,定义一个dict:d = dict(name='Bob', age=20,
- json和dictpython中的dict类型要转换为json格式的数据需要用到json库:import json <json>
- 本文实例为大家分享了python opencv识别图像轮廓的具体代码,供大家参考,具体内容如下要求:用矩形或者圆形框住图片中的云朵(不要求全
- skimage包的exposure模块图像亮度与对比度的调整,是放在skimage包的exposure模块里面1、gamma调整对原图像的像
- 以下是通过Excel 的VBA连接Oracle并操作Oracle相关数据的示例Excel 通过VBA连接数据库需要安装相应的Oracle客户
- 需求查询某个字段的时候需要给一个字段同样的值。这个值你可以写死,也可以从数据库获取1、写死值SELECT mfr_id AS mfrId,
- 最近要做一个图像生成的课题,在网上找了一个混合的数据集。这个数据集中一共有360个文件夹,然后文件夹中有6-9张不等的照片,我的目标就是编写
- 对于现在很多工业检测,特别是对一些精密的器件进行筛选,往往都是像素级别的,十分的精确。主要思想将图像转化为二值图像在对图像进行腐蚀/膨胀处理
- 这个列表包含与网页抓取和数据处理的Python库python网络库通用urllib -网络库(stdlib)。requests&n
- 在Windows中安装MySQL时,有3种MySQL 5.1安装软件包可供选择:· 基本安装:该安装软件包的文件名类似
- 模式库在模式库里,我将列出所有电子商务网站需要的模式.以下将罗列出经典常用的模式案例,我也试图让这些模式看起来更有趣味性与实用性。(Yaho
- import matplotlib.pyplot as pltimport jiebafrom wordcloud import wordc
- OpenCV 对象跟踪这篇文章使用 OpenCV 中内置的八种不同的对象跟踪算法,实现对物体的跟踪。首先,介绍一下8种跟踪算法。然后,演示如
- 目录一. pymysql介绍二. 连接数据库的完整流程1. 引入pymysql模块2. 创建连接对象3. 使用连接对象创建游标对象4. 准备
- 找到自己的mysql数据库的安装位置,如下 C:\Program Files\MySQL\MySQL Server 5.1,在它里面有个的m
- pygame绘制机制简介 屏幕控制 pygame.display• 用来控制Pygame游戏的屏幕• Pygame有且只有一个屏幕
- 查看Django版本检查是否安装成功,可以在dos下查看Django版本。1.输入python 2.输入import django3.输入d
- 目录1、发送get请求2、发送post请求3、发送https请求4、文件上传5、文件下载6、timeout超时7、鉴权7.1、auth参数鉴
- 用户授权方法你可以通过发出GRANT语句增加新用户:shell> mysql --user=root mysqlmysql> G
- 如下所示:matplotlib subplots 设置总图的标题 :fig.suptitle(dname,fontsize=16,x=0.5