Python实现用户登录注册
作者:super7cheng 发布时间:2021-01-12 17:03:42
标签:python,登录,注册
简单的Python代码:用户登录注册
利用业余时间,写了一个用户进行登录注册的代码,非常简单。主要实现的功能是:
1、可以进行用户登录,在用户进行登录之前,对用户名进行检查,查看是否是已经注册的用户,如果是已经注册的用户,则直接登录;如果是未注册的用户,需要进行注册才可以登录
2、用户名检查:用户名长度为8~18位,不在这个数字范围内的用户名不可以进行登录,字符不限
3、用户密码检查:密码长度为8~18位,不在这个范围内的用户名也是不可以进行注册的,字符不限(其实用户名和密码的长度都是可以自己改的)
4、不允许注册已经存在的用户名
话不多说,上代码:
'''*********************用-户-登-录-注-册********************'''
from time import sleep
dic = {}
def Register(): #注册函数
name = input("请输入您要注册的用户名:")
if dic.__contains__(name):
print("用户名已存在,请重新注册!")
Register()
elif len(name) < 8 or len(name)> 18: #用户名长度检测
print("用户名最少8位,最多18位")
Register()
else:
pass1 = input("请输入密码:")
pass2 = input("请再次确认密码:")
if pass1 == pass2 and len(pass1) >=8 and len(pass1)<=18:
#进行密码检测,判断2次密码是否输入一致
print("注册成功,请登录!\n")
o = open(r'C:\Users\Lenovo\Desktop\user.txt', 'a', encoding='utf-8')
#创建一个对象o,用来打开文件
#这里的r'C:\Users\Lenovo\Desktop\user.txt'是txt文件的的地址,可以根据自己的情况,导入文件的绝对路径就可以了,前面的r一定要加上
o.write('\n'+name+':'+pass1)
#写入用户名和密码 用户名和密码的存储格式是:user:password
o.close()
Login() #注册完用户名后,调用登录函数
else:
print("两次密码输入不一致,请重新注册!\n")
Register() # 密码输入不一致,重新调用注册函数,进行注册
def Login(): #登录函数
o = open(r'C:\Users\Lenovo\Desktop\user.txt', 'r', encoding='utf-8')
#创建一个对象o,用来打开txt文档
all = o.read() #创建对象all用来读取文档内容
a = all.replace('\n',' ') #用空格' '来替换文档中的换行符
b = a.split(' ') #按照空格进行切割
user_name = input("请输入您的用户名:")
for i in b: #对数据库中的用户信息进行遍历
c = i.split(':')
dic[c[0]] = c[1]
if dic.__contains__(user_name): #检查输入的用户名是否存在数据库中
user_pass = input("请输入密码:") #如果存在就输入对应的密码
if user_pass == dic[user_name]:
print("登录成功!")
break
else:
print("密码错误,已退出登录!")
break
if b.index(i) == len(b)-1:
#判断是否已经遍历完所有的用户信息,如果遍历完了,没有找到输入的对应用户信息,说明用户不存在
print("您输入的用户不存在!")
YN = input("是否需要注册用户 (如果注册请输入:1 退出输入:0): ")
#这里只是一个提示信息,只有在输入1时才会调用注册函数,输入其他的都会直接退出
if YN == '1':
Register()
else:
print("3s后自动退出...")
sleep(3)
break
''''''
'''主函数就一行调用登录的代码'''
Login() #程序从这里开始运行
第一次写博客,不是特别熟悉,程序也比较简单,只是写着玩,后期会继续努力,如果有哪里不对的地方或者更高明的见解,还希望能得到您的指点,谢谢您!
txt文档中的用户信息存储示例:
admin001:12345678
admin002:87654321
admin003:asdfhkijk
来源:https://blog.csdn.net/asunshineboy/article/details/117189395
0
投稿
猜你喜欢
- 无聊的人在无聊的时间做无聊的事打发自己,结果在无聊的事情中发现了IE对内联文字解释的一些疑惑。以下问题在FF2中没发现,而我也只
- 在MySQL中,一个字符串中,如果某个序列具有特殊的含义,则这个序列以反斜线符号(‘\’)开头,称为转义字符。常见的转义字符:\0 ASCI
- 这个问题已经不是什么新鲜问题了,网上也有大把的教程,但大多数是授人以鱼,而不授人以渔,经过辛苦的资料收集,思考,调试,整理,我基本上已经把这
- DOM遍历基于ID、元素类型、类名查找元素非常有用,但是如果你想基于它在DOM树中的位置来查找元素该怎么办?换句话说,你有一个给定的元素,你
- 本文实例讲述了Python实现的爬取豆瓣电影信息功能。分享给大家供大家参考,具体如下:本案例的任务为,爬取豆瓣电影top250的电影信息(包
- 事务日志文件Transaction Log File是用来记录数据库更新情况的文件,扩展名为ldf。在 SQL Server 7.0 和 S
- 今天一个同事报告一个问题,表都不能使用了,检查了一下,发现问题 db2 => select * from testACTNO ACTK
- 这是一条颠覆常规的插入方法,一条INSERT语句可以完成向多张表的插入任务。小小地展示一下这种插入方法。1.创建表T并初始化测试数据,此表作
- 1、下载mysql-python官网地址:http://sourceforge.net/projects/mysql-python/2、安装
- 一、利用ASP和ADO实现数据库操作的工作流程ASP内嵌了五个对象Resquest、Response、Server、Seesion、Appl
- DataList Web 服务器控件 通过使用模板显示数据源中的项。通过操作组成 DataList
- 如何选择速度最快的站点? <html><head><meta http-equiv=&qu
- 将json多行数据传入到mysql中使用python实现表需要提前创建,字符集utf8 如果不行换成utf8mb4import jsonim
- 一、打开/关闭文件1、对文件操作时首先要打开文件,打开文件用 fopen()函数,语法是:fopen(filename,mode,inclu
- 功能很简单,代码也很简洁,这里就不多废话了。package mainimport ( "fmt
- 如何使用mailto?1)基本用法<a href=mailto:sample@163.com>send em
- 前端代码要做到简洁易读、高效,还要考虑后端嵌套的方便性。前段时间做了一个导航,把整个制作过程重现,希望对大家有帮助。看到这样的导航,你会怎么
- 打开VB6,新建ActiveX DLL 2、在工程引用中加入Microsoft Active Server Pages Object Lib
- PHP PDO 预处理语句与存储过程很多更成熟的数据库都支持预处理语句的概念。什么是预处理语句?可以把它看作是想要运行的 SQL 的一种编译
- Python字符串拼接的几种方法整理第一种 通过加号(+)的形式print('第一种方式通过加号形式连接 :' + '