Python实现注册、登录小程序功能


Posted in Python onSeptember 21, 2018

主要实现功能

1、用户输入用户名,在用户名文件中查找对应的用户,若无对应用户名则打印输入错误

2、用户名输入正确后,进行密码匹配。输入密码正确则登录成功,否则重新输入。
3、连续输错三次密码则该用户名被锁,退出程序

--------------------------------------------------

在程序文件夹下建立一个用户名、密码的文件 :user_np.txt和一个用于存放被锁用户名的文件:lock.txt

--------------------------------------------------

#setencoding=utf-8

import os,sys
#将用户名文件内容读取到内存中
user = open('user_np.txt')
account_list = user.readlines()
user.closeloginSucess = 0       #控制while循环退出

lock_n = False
#判断用户输入的用户名是否被锁的标志位

while True:


username = input('please input username:').strip()    #strip()函数是忽略空格
 
if len(username) == 0:


print('输入用户名不能为空')


continue

else :


print('输入用户名不为空')


l = open('lock.txt')


l_list = l.readlines()


l.close()


print(l_list)


for j in l_list:



j = j.strip('\n')



if username == j:




print('该用户已经锁定,请输入其他用户名')




lock_n = True




del j          #删除变量j




break



else:




continue


if lock_n is True:



lock_n = False



continue


else:



lock_n = False



for i in account_list:




i = i.split()             #split()函数是对括号中的符号进行切割
 



if username == i[0]:





for x in range(3):





password = input('please input password:').strip()





if password == i[1]:






loginSucess = 2






break





else:






print('The password is error')





#匹配正确或者遇到break程序就跳出循环体下面语句不执行
 



else:       #输入超过三次,将用户名写入锁文件并打印出来
 




print('%s ,input password is beyond three times,going to lock'%username)





l = open('lock.txt','a')





l.write(username+'\n')      #将要锁的用户名写入锁文件并且换行
 




l.close()





view = open('lock.txt')      #打开锁文件
 




print(view.read())          #打印锁文件的内容,方便自己做调试
 




loginSucess = 1


if loginSucess ==2:                 



print('sucess info')



break


elif loginSucess ==1:



print('用户名被锁,请重新输入')


else:



print('输入错误')

下面通过代码看下python实现注册登录小程序

用python 实现模拟注册和登录的程序:用户信息最终以字典的格式储存在一个txt文件里,具体实现如下:

users.txt里用户字典格式如下:

{
   'name': {'password': '111111', 'role': '1'},
   'name2': {'password': '222222', 'role': '1'},   
   'name3': {'password': '222222', 'role': '1'}
 }

 # 注册
 f = open('users.txt', 'a+', encoding='utf-8')
 f.seek(0)
 user_info = eval(f.read())# 字符串转字典
 i =0
 while i<3:
   i += 1
   uname = input("请输入用户名:").strip()
   upass = input("请输入密码:").strip()
   passC = input("请确认密码:").strip()
   if not uname or not upass or not passC:
     print("注册失败,用户名或密码不能为空")
     continue
   if upass != passC:
     print("注册失败,两次输入密码不一致")
     continue
   if uname in user_info:
     print("注册失败,用户名已存在")
     continue
   print("恭喜你,注册成功!")
   user_info[uname] ={'password':upass,'role':'1'}
   f.seek(0)
   f.truncate()
   f.write(str(user_info))
 else:
   print("sorry,register over 3 times bye-bye!")
 f.close()
 # 登录
 fr = open('users.txt', 'r')
 fr.seek(0)
 user_info = eval(fr.read())
 j = 0
 while j<3:
   j +=1
   uname = input("请输入用户名:\n").strip()
   upass = input("请输入密码:\n").strip()
   if not uname:
     print("用户名不能为空")
     continue
   if not upass:
     print("密码不能为空")
     continue
   if uname not in user_info:
     print("用户名不存在")
     continue
   if upass != user_info[uname]['password']:
     print("密码错误")
     continue
   print("恭喜你,登录成功!")
 else:
   print("sorry! login over 3 times bye-bye! ")
 f.close()

运行结果:

Python实现注册、登录小程序功能

以上所述是小编给大家介绍的Python实现登录、注册小程序功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Python 相关文章推荐
Python 第一步 hello world
Sep 25 Python
Python使用ftplib实现简易FTP客户端的方法
Jun 03 Python
使用Python来编写HTTP服务器的超级指南
Feb 18 Python
Python序列操作之进阶篇
Dec 08 Python
Python下的Softmax回归函数的实现方法(推荐)
Jan 26 Python
Python安装Numpy和matplotlib的方法(推荐)
Nov 02 Python
PyQt5打开文件对话框QFileDialog实例代码
Feb 07 Python
[原创]windows下Anaconda的安装与配置正解(Anaconda入门教程)
Apr 05 Python
Linux上使用Python统计每天的键盘输入次数
Apr 17 Python
python实现nao机器人手臂动作控制
Apr 29 Python
CentOS6.9 Python环境配置(python2.7、pip、virtualenv)
May 06 Python
Python smtp邮件发送模块用法教程
Jun 15 Python
用于业余项目的8个优秀Python库
Sep 21 #Python
Python 经典面试题 21 道【不可错过】
Sep 21 #Python
python使用folium库绘制地图点击框
Sep 21 #Python
在python中安装basemap的教程
Sep 20 #Python
python编程使用协程并发的优缺点
Sep 20 #Python
详解Numpy中的广播原则/机制
Sep 20 #Python
Python 读写文件的操作代码
Sep 20 #Python
You might like
PHP注释实例技巧
2008/10/03 PHP
基于PHP5魔术常量与魔术方法的详解
2013/06/13 PHP
PHP+iframe图片上传实现即时刷新效果
2016/11/18 PHP
PHP实现微信提现功能
2018/09/30 PHP
Laravel 队列使用的实现
2019/01/08 PHP
如何通过PHP实现Des加密算法代码实例
2020/05/09 PHP
Aster vs Newbee BO5 第二场2.19
2021/03/10 DOTA
上传图片js判断图片尺寸和格式兼容IE
2014/09/01 Javascript
JavaScript用JQuery呼叫Server端方法示例代码
2014/09/03 Javascript
JavaScript数组随机排列实现随机洗牌功能
2015/03/19 Javascript
JavaScript中split() 使用方法汇总
2015/04/17 Javascript
Javascript中的作用域和上下文深入理解
2015/07/03 Javascript
jQuery实现瀑布流布局详解(PC和移动端)
2020/09/01 Javascript
深入浅析search 搜索框的写法
2016/08/02 Javascript
JavaScript数组和对象的复制
2017/03/21 Javascript
Angular.js中控制器之间的传值详解
2017/04/24 Javascript
使用InstantClick.js让页面提前加载200ms
2017/09/12 Javascript
Angular4的输入属性与输出属性实例详解
2017/11/29 Javascript
Node.js系列之安装配置与基本使用(1)
2019/08/30 Javascript
Vue退出登录时清空缓存的实现
2019/11/12 Javascript
javascript实现点击小图显示大图
2020/11/29 Javascript
[03:49]DOTA2英雄基础教程 光之守卫
2014/01/14 DOTA
Python随机读取文件实现实例
2017/05/25 Python
Python元组及文件核心对象类型详解
2018/02/11 Python
python基础教程项目三之万能的XML
2018/04/02 Python
实例讲解Python脚本成为Windows中运行的exe文件
2019/01/24 Python
Python3基于print打印带颜色字符串
2020/07/06 Python
个人简历的自荐信
2013/10/23 职场文书
英文版区域经理求职信
2013/10/23 职场文书
生产部厂长助理职位说明书
2014/03/03 职场文书
法律顾问服务方案
2014/05/15 职场文书
保研导师推荐信
2015/03/25 职场文书
2015年化验室工作总结
2015/04/23 职场文书
你会写报告?产品体验报告到底该怎么写?
2019/08/14 职场文书
创业计划书之校园超市
2019/09/12 职场文书
Python基础详解之邮件处理
2021/04/28 Python