大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
利用python编写一个登录与注册功能?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
创新互联是一家业务范围包括IDC托管业务,网络空间、主机租用、主机托管,四川、重庆、广东电信服务器租用,西部信息服务器租用,成都网通服务器托管,成都服务器租用,业务范围遍及中国大陆、港澳台以及欧美等多个国家及地区的互联网数据服务公司。实现功能
1.调用文本文件里的用户信息
2.可以将注册信息存储在文本文件里
3.实现了密码格式的限制
具体用户信息将如下格式存储在txt文本文件下
转换后便于代码利用的格式(列表中嵌套字典)
具体代码如下:
#-*- coding=utf8 -*- # @author:sololi # date: 2020/11/3 # 文件说明 : import sys def register(username,password):#登录功能,且与存储用户表的文本文件进行比较 #验证用户名 shuju=readfile() jg1 = 0 i = 0 while (i < len(shuju)): if (username == shuju[i]["用户名"]): print("用户名正确") jg1 = 1 break i += 1 # 用户名错误将不再验证密码 if (jg1 != 1): print("用户名错误") # 验证密码 if (jg1 == 1): jg2 = 0 i = 0 while (i < len(shuju)): if (password == shuju[i]["密码"]): print("密码正确") jg2 = 1 break i += 1 if (jg2 != 1): print("密码错误") def logon(username):#注册功能,且以正确格式存入文本文件 shuju=readfile() jg3 = 0 i = 0 while (i < len(shuju)): if (username == shuju[i]["用户名"]): print("用户名已经存在") jg3 = 1 break i += 1 if(jg3 == 0): while True: password = input("请输入注册的密码(密码不能小于6位,且不能为纯数字)") if (str.isdigit(password)==1) or (len(password)<6): print("密码格式错误") else: break passwordagain=input("请再次确认密码") while True: if(password==passwordagain): break else: print("两次密码不一致") passwordagain = input("请再次确认密码") # 将注册的用户信息存储到文本文件中 f = open("data", mode='a+', encoding="utf8") if shuju == []: f.write("用户名:{},密码:{}".format(username, password)) if shuju != []: f.write("\n用户名:{},密码:{}".format(username, password)) print("注册成功") f.close() def readfile():#将数据转换成列表字典形式,放在data.txt中便于后面登录与注册存放数据 f = open('data', "r+", encoding="utf8") shuju = [] b = [] aa = {} for line in f.readlines(): line = line.strip('\n') a = line.split(' ') i = 0 while i < len(a): b = a[i].split(',') i += 1 j = 0 while j < len(b): if b == " ": break c = b[j].split(':', 1) aa[c[0]] = c[1] i += 1 j += 1 shuju.append(aa.copy()) # copy是为了防止添加是数据类型不同出错 f.close() return shuju while True: choice=input("登录输入1,注册输入2,其他任意键退出") if choice=="1": id=input("输入您的账号") pw=input("输入您的密码") register(id,pw) break if choice=="2": id=input("输入你注册的账号") logon(id) continue else: print("退出成功") sys.exit(0)
看完上述内容,你们掌握利用python编写一个登录与注册功能的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注创新互联行业资讯频道,感谢各位的阅读!