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转码问题的解决方法
Oct 07 Python
python应用程序在windows下不出现cmd窗口的办法
May 29 Python
Python中使用MELIAE分析程序内存占用实例
Feb 18 Python
Python3网络爬虫之使用User Agent和代理IP隐藏身份
Nov 23 Python
PyQt5通信机制 信号与槽详解
Aug 07 Python
解决python 上传图片限制格式问题
Oct 30 Python
PyInstaller将Python文件打包为exe后如何反编译(破解源码)以及防止反编译
Apr 15 Python
实现ECharts双Y轴左右刻度线一致的例子
May 16 Python
Python操作Elasticsearch处理timeout超时
Jul 17 Python
Python 打印自己设计的字体的实例讲解
Jan 04 Python
python脚本框架webpy模板赋值实现
Nov 20 Python
python3中apply函数和lambda函数的使用详解
Feb 28 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
Laravel框架表单验证详解
2014/09/04 PHP
PHP中使用Imagick实现各种图片效果实例
2015/01/21 PHP
PHP实现补齐关闭的HTML标签
2016/03/22 PHP
浅谈PHP中如何实现Hook机制
2017/11/14 PHP
PHP 实现重载
2021/03/09 PHP
[原创]站长必须要知道的javascript广告代码
2007/05/30 Javascript
前后台交互过程中json格式如何解析以及如何生成
2012/12/26 Javascript
js利用数组length属性清空和截短数组的小例子
2014/01/15 Javascript
javascript实现滑动解锁功能
2014/12/31 Javascript
jQuery异步上传文件插件ajaxFileUpload详细介绍
2015/05/19 Javascript
jQuery实现tab选项卡效果的方法
2015/07/08 Javascript
JS+DIV+CSS实现仿表单下拉列表效果
2015/08/18 Javascript
jQuery实现两款有动画功能的导航菜单代码
2015/09/16 Javascript
node.js 动态执行脚本
2016/06/02 Javascript
JS+CSS3制作炫酷的弹窗效果
2016/11/08 Javascript
详解Vue2中组件间通信的解决全方案
2017/07/28 Javascript
vue实现仿淘宝结账页面实例代码
2017/11/08 Javascript
利用Node.js检测端口是否被占用的方法
2017/12/07 Javascript
详解angular分页插件tm.pagination二次触发问题解决方案
2018/07/20 Javascript
jQuery实现模拟搜索引擎的智能提示功能简单示例
2019/01/27 jQuery
JavaScript ES2019中的8个新特性详解
2019/02/20 Javascript
详解Vue、element-ui、axios实现省市区三级联动
2019/05/07 Javascript
Vue Render函数创建DOM节点代码实例
2020/07/08 Javascript
Python设计足球联赛赛程表程序的思路与简单实现示例
2016/06/28 Python
Python中selenium实现文件上传所有方法整理总结
2017/04/01 Python
Python基于回溯法解决01背包问题实例
2017/12/06 Python
django反向解析和正向解析的方式
2018/06/05 Python
使用python对文件中的单词进行提取的方法示例
2018/12/21 Python
OpenCV 模板匹配
2019/07/10 Python
python实现每天自动签到领积分的示例代码
2020/08/18 Python
size?瑞典:英国伦敦的球鞋精品店
2018/03/01 全球购物
Sisley法国希思黎中国官网:享誉全球的奢华植物美容品牌
2019/06/30 全球购物
Yahoo-PHP面试题1
2016/07/20 面试题
2014年祖国生日寄语
2014/09/19 职场文书
英文慰问信范文
2015/03/24 职场文书
2016年基层党支部书记公开承诺书
2016/03/25 职场文书