python如何实现不用装饰器实现登陆器小程序


Posted in Python onDecember 14, 2019

这篇文章主要介绍了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!")

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python实现计算资源图标crc值的方法
Oct 05 Python
python实现在windows下操作word的方法
Apr 28 Python
基于python实现的抓取腾讯视频所有电影的爬虫
Apr 22 Python
深入理解python函数递归和生成器
Jun 06 Python
Python3编码问题 Unicode utf-8 bytes互转方法
Oct 26 Python
详解python列表生成式和列表生成式器区别
Mar 27 Python
详解django实现自定义manage命令的扩展
Aug 13 Python
在vscode中配置python环境过程解析
Sep 28 Python
Python导入数值型Excel数据并生成矩阵操作
Jun 09 Python
基于python实现简单网页服务器代码实例
Sep 14 Python
Anaconda+spyder+pycharm的pytorch配置详解(GPU)
Oct 18 Python
Python中pass的作用与使用教程
Nov 13 Python
python模块和包的应用BASE_PATH使用解析
Dec 14 #Python
python socket通信编程实现文件上传代码实例
Dec 14 #Python
python如何使用socketserver模块实现并发聊天
Dec 14 #Python
python paramiko远程服务器终端操作过程解析
Dec 14 #Python
安装PyInstaller失败问题解决
Dec 14 #Python
django自定义模板标签过程解析
Dec 14 #Python
django序列化serializers过程解析
Dec 14 #Python
You might like
PHP实现一维数组转二维数组的方法
2015/02/25 PHP
PHP使用PHPexcel导入导出数据的方法
2015/11/14 PHP
PHP反射学习入门示例
2019/06/14 PHP
关于PHP中interface的用处详解
2020/07/26 PHP
javascript 尚未实现错误解决办法
2008/11/27 Javascript
javascript Deferred和递归次数限制实例
2014/10/21 Javascript
jquery小火箭返回顶部代码分享
2015/08/19 Javascript
jQuery实现可移动选项的左右下拉列表示例
2016/12/26 Javascript
jQuery布局组件EasyUI Layout使用方法详解
2017/02/28 Javascript
JavaScript编写一个贪吃蛇游戏
2017/03/09 Javascript
浅谈 Vue v-model指令的实现原理
2017/06/08 Javascript
浅谈JS中的常用选择器及属性、方法的调用
2017/07/28 Javascript
浅谈react-router HashRouter和BrowserRouter的使用
2017/12/29 Javascript
vue动态路由配置及路由传参的方式
2018/05/23 Javascript
深入理解Vue父子组件生命周期执行顺序及钩子函数
2018/08/12 Javascript
angular2实现统一的http请求头方法
2018/08/13 Javascript
Vue动画事件详解及过渡动画实例
2019/02/09 Javascript
详解一些适用于Node.js的命名约定
2019/12/08 Javascript
Vue中computed及watch区别实例解析
2020/08/01 Javascript
Vue中使用Echarts仪表盘展示实时数据的实现
2020/11/01 Javascript
vue中h5端打开app(判断是安卓还是苹果)
2021/02/26 Vue.js
[02:50]2014DOTA2 TI预选赛预选赛 大神专访第一弹!
2014/05/21 DOTA
[36:33]完美世界DOTA2联赛PWL S2 LBZS vs Forest 第二场 11.29
2020/12/02 DOTA
python进程管理工具supervisor使用实例
2014/09/17 Python
Python实现的各种常见分布算法示例
2018/12/13 Python
详解Python二维数组与三维数组切片的方法
2019/07/18 Python
Python实现桌面翻译工具【新手必学】
2020/02/12 Python
python json load json 数据后出现乱序的解决方案
2020/02/27 Python
jupyter notebook中美观显示矩阵实例
2020/04/17 Python
基于python+selenium自动健康打卡的实现代码
2021/01/13 Python
CSS3 :default伪类选择器使用简介
2018/03/15 HTML / CSS
泰坦健身器材:Titan Fitness
2018/02/13 全球购物
Tommy Hilfiger美国官网:美国高端休闲领导品牌
2019/01/14 全球购物
自荐信要包含哪些内容
2013/11/06 职场文书
幼儿园保育员辞职信
2014/01/12 职场文书
店面销售职位的职责
2014/03/09 职场文书