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

Posted Iceberg_710815

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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装饰器小例子

python使用上下文对代码片段进行计时,非装饰器

Python基础-装饰器

~~函数进阶:装饰器~~

装饰器实现session登陆 验证功能

python自动测试Pytest中Fixture装饰器