1_python小程序之实现用户的注册登陆验证功能
2017-10-15 20:28
1211 查看
python小程序之实现用户的注册登陆验证功能
程序扼要简述:
一、程序流程:
1.程序开始
2.判断本地文件/数据库是否已存在用户信息,存在则跳转到登陆,否则跳转到注册,注册成功后后跳转到登陆
3.判断登陆是否成功,成功则返回成功信息,否则重复尝试登陆3次,最后登录不成功则锁定15秒
4.程序结束
二、程序使用的知识点:
1.本地文件的存储读取
2.对字典的操作
3.if条件判断
4.for/while循环
三、流程思路图:
四、代码详细:
#!/usr/bin/env python # _*_ coding: utf-8 _*_ # author='chenjianwen' ##实现用户的注册登陆验证功能 import getpass import os,sys,time ##红色 def print_red(messages): print('\033[1;35m %s \033[0m' %messages) ##绿色 def print_green(messages): print('\033[1;32m %s \033[0m' %messages) ##定义空字典 userinfo = [] un = [] pas = [] ##判断存储用户信息文件是否存在,不存在则创建 if not os.path.exists('./userinfo.txt'): f = open("./userinfo.txt",mode="w",encoding="UTF-8") f.close() ##读取存储用户信息文件,并把用户信息写入字典 save_userinfo_file = open('./userinfo.txt','r') for line in save_userinfo_file.readlines(): line =line.strip() if not len(line) or line.startswith('#'): continue #print(line) username = line.split(' ')[0] password = line.split(' ')[1] phone_number = line.split(' ')[2] #print('==========================') #print(username,password,phone_number) #userinfo.append({'username':'%s' %username,'password':'%s' %password,'phon_number':'%s' %phone_number}) un.append(username) pas.append(password) #print(userinfo) count = 0 while True: if count < 3: count +=1 select_info = input("你是否有注册过账号了? Please select Y/N:") ##用户注册信息 if select_info == 'N' or select_info == 'n': print("开始注册用户信息:") username = input("Please enter your username:") password = getpass.getpass("Please enter your password:") phone_number = input("Please enter your phon_number:") #userinfo.append({'username':'%s' %username,'password':'%s' %password,'phon_number':'%s' %phone_number}) un.append(username) pas.append(password) #print(userinfo) with open('./userinfo.txt','a') as fw: fw.writelines('\n%s %s %s' %(username,password,phone_number)) #print(userinfo) ##用户登陆验证信息 elif select_info == 'Y' or select_info == 'y': #print(userinfo) print("开始登录验证信息:") username = input("Please enter your username:") password = getpass.getpass("Please enter your password:") if username in un and password in pas: ##【优化1次】用户与密码验证方法有待优化,目前能够用户密码错位登录,只要列表中分别有输入的对应的字段就可以登录 print_green("welcom login {_username}".format(_username=username)) break else: print_red('Check fail...Check again...') print_red("您还有%s次登录机会" % (3 - count)) continue else: print_red("您输入的内容错误! Please enter again...") continue else: print_red("重复登陆多次失败,请15分钟后再尝试登陆...") time.sleep(15) count = 0 continue
五、执行结果
相关文章推荐
- Python通过Django实现用户注册和邮箱验证功能代码
- 实现用户注册功能:用servlet验证提交的数据是否合法,不合法返回注册页面,并提示出错。
- Django---用户注册和登陆验证(3)--具体实现--使用默认的
- ASP.NET jQuery 实例12 通过使用jQuery validation插件简单实现用户注册页面验证功能
- ASP.NET实现用户注册和验证功能(第4节)
- thinkphp中create()方法实现简单的用户注册表单验证功能
- ASP.NET MVC+EF框架+EasyUI实现权限管理系列(17)-注册用户功能的细节处理(各种验证)
- Java用户注册手机短信验证码校验功能实现
- Java小程序之集合框架模拟数据库实现用户登录和注册功能
- Java小程序之集合框架模拟数据库实现用户登录和注册功能
- ASP.NET jQuery 食谱12 (通过使用jQuery validation插件简单实现用户注册页面验证功能)
- 使用集合实现注册登陆功能,第一步: 提示用户选择功能, A(注册) B(登陆) 。 要求: 功能选择 的时候要忽略大小写。
- ASP.NET MVC+EF框架+EasyUI实现权限管理系列(17)-注册用户功能的细节处理(各种验证)
- Python学习笔记_02:使用Tkinter连接MySQL数据库实现登陆注册功能
- Python实现用户登陆小程序
- 用Python实现web端用户登录和注册功能的教程
- ASP.NET MVC+EF框架+EasyUI实现权限管理系列(17)-注册用户功能的细节处理(各种验证)
- mvc C# JavaScript LigerUI oracle实现用户的注册、登陆验证、登陆
- Discuz!用户注册,登陆,生成帖子功能实现
- MyBlog部分模块---基于Servlet+JSP+JavaBean实现登陆注册验证功能