Maison >développement back-end >Tutoriel Python >Implémentation simple de la fonction de connexion et d'enregistrement en python

Implémentation simple de la fonction de connexion et d'enregistrement en python

大家讲道理
大家讲道理original
2017-07-15 11:57:261955parcourir

L'idée générale est que j'ai écrit cinq fonctions respectivement

fileRead() 文件读取
FileWrite()文件写入
FileModify()文件修改
Register()注册
Login()登陆

来实现整个功能的,话不多说直接上代码了
#!/usr/bin/env python# -*- coding:utf-8 -*-# Author: linghanchujian"""
  实现一个登陆注册功能
     提示是否拥有账号 有跳转登陆 没有跳转注册
  注册    
  检查文件中是否有相同的账号名
  注册成功后跳转到登陆
  登陆
  输入用户名和密码
  认证成功后显示欢迎登陆
  三次失败是锁定账号"""import osimport jsonimport getpass

DATAJSON = '' #临时用来存放数据"""文件的读取"""def FileRead():
    LoginAndRegistrationData = open("G:/Data.txt","r")if os.path.getsize("G:/Data.txt")!= 0:global DATAJSON  # 全局变量DATAJSON = json.loads(LoginAndRegistrationData.read())# DATAJSON = LoginAndRegistrationData.read()# print(DATAJSON)    LoginAndRegistrationData.close()pass"""文件的写入"""def FileWrite(DATAJSON,userName,passWord):"""直接打开一个txt文件没有就创建Data文件"""LoginAndRegistrationData = open("G:/Data.txt", "w")
    Subscript = 1if DATAJSON != '':for d in DATAJSON:
            Subscript += 1DATAJSON["User"+str(Subscript)] = {"UserName":userName,"Password":passWord,"isLocking":False}else:
        DATAJSON = {"User1":{"UserName":userName,"Password":passWord,"isLocking":False}}
    JsonData = json.dumps(DATAJSON, ensure_ascii=False)
    LoginAndRegistrationData.write(JsonData)
    LoginAndRegistrationData.close()# print(Subscript)pass"""文件的修改"""def FileModify(n):# 对文件进行修改DATAJSON[str(n)]["isLocking"] = True# 对文件进行储存LoginAndRegistrationData = open("G:/Data.txt", "w")
    JsonData = json.dumps(DATAJSON, ensure_ascii=False)
    LoginAndRegistrationData.write(JsonData)
    LoginAndRegistrationData.close()pass"""注册程序"""def Register():print("------------欢迎来注册!!---------")
    RegisterUserName = input("注册账号:")if DATAJSON != '':for d in DATAJSON:if DATAJSON[d]["UserName"]==RegisterUserName:print("该账号已被注册!!!")
                Register()return ;
    RegisterPassWord = input("注册密码:")try:
     FileWrite(DATAJSON,RegisterUserName,RegisterPassWord)finally:print("注册成功!!")
        Login()pass"""登陆程序"""def Login():print("------------欢迎来到登陆!!-----------")
    isUserName = True
    LoginUser = input("账号:")for d in DATAJSON:# print(d)# print(DATAJSON[d]["UserName"]+"and"+LoginUser)if LoginUser == DATAJSON[d]["UserName"]:
            isUserName = Falseif DATAJSON[d]["isLocking"]==True:print("该账号已被锁定,请更换账号!!")
                Login()returnelse:for i in range(3):if i>0:print("密码错误你还有"+str(3-i)+"次机会")
                    LoginPassword = input("密码:")if DATAJSON[d]["Password"]==LoginPassword:print("登陆成功!!")returnelse:if i == 2:print("三次机会用完,该账号已被锁定!!")
                            FileModify(d)
                            Login()else:if isUserName:print("没有该账号!!")
            Login()passFileRead()print(DATAJSON)
YesAndNo = input("是否拥有账号?y/n\n")if YesAndNo == 'y':
    Login()elif YesAndNo == 'n':
    Register()else:print("谢谢你的使用!!")
    exit()

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn