python实现注册登录系统_python实现登录与注册系统「建议收藏」

python实现注册登录系统_python实现登录与注册系统「建议收藏」本文实例为大家分享了python实现登录与注册系统的具体代码,供大家参考,具体内容如下实现功能1.调用文本文件里的用户信息2.可以将注册信息存储在文本文件里3.实现了密码格式的限制具体用户信息将如下格式存储在txt文本文件下转换后便于代码利用的格式(列表中嵌套字典)具体代码如下:#-*-coding=utf8-*-#@author:sololi#date:2020/11/3#文件说…

大家好,又见面了,我是你们的朋友全栈君。

本文实例为大家分享了python实现登录与注册系统的具体代码,供大家参考,具体内容如下

实现功能

1.调用文本文件里的用户信息

2.可以将注册信息存储在文本文件里

3.实现了密码格式的限制

具体用户信息将如下格式存储在txt文本文件下

bc0c42093d4386b5d42d8a5f13e1859c.png

转换后便于代码利用的格式(列表中嵌套字典)

98df17b1883eb45d08bcfa59a9ca663d.png

具体代码如下:

#-*- 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)

初学者作品,有错请指教

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/142847.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • PHP小程序开发_微信小程序后端语言

    PHP小程序开发_微信小程序后端语言想要快速地开发一个小程序,很多环节都需要注意,微信小程序php后端的开发估计很多人都还很陌生,但是这也是至关重要的,一起来看看开发实例详解吧。1.小程序相对于之前的WEB+PHP建站来说,个人理解为只是将web放到了微信端,用小程序固定的格式前前端进行布局、事件触发和数据的输送和读取,服务器端可以用任何后端语言写,但是所有的数据都要以JSON的形式返回给小程序。2.昨天写了登录注册、忘记密码功能,…

    2022年9月17日
    1
  • oracle11g安装步骤详细图文教程

    oracle11g安装步骤详细图文教程一、下载oracle11g下载地址:https://www.oracle.com/database/technologies/oracle-database-software-downloads.h

    2022年7月3日
    26
  • 中国软件外包IT公司最新排名

    中国软件外包IT公司最新排名http://cnitcomments.com/companylist/topoutsourcing.htm1.博朗软件Bleum(上海)2.中软国际(北京)3.东软集团Neusoft(沈阳)4.博彦科技BeyondSoft(北京)5.海辉软件HiSoft(大连)6.文思VanceInfo(北京)7.浙大网新Insigma(杭州)8…

    2022年6月9日
    63
  • MySQL配置文件my.ini「建议收藏」

    MySQL配置文件my.ini「建议收藏」my.ini文件位置1、在我们的电脑上面找到mysql的安装路径,点击进去之后可以看到my.ini在mysql安装路径的根目录2、另外一种情况是我们在mysql安装目录找不到,看到了my-default.ini文件或者也没有,这时my.ini在“C:\ProgramData\MySQL\MySQLServerx.x”目录下面,我们首先需要找到ProgramData文件夹,这是一个隐藏文件,需要隐藏文件可见才行,或者可以直接检索我们可以看到在“C:\ProgramData\MySQL\MySQLS

    2022年5月23日
    30
  • vs2005注册_vs注册界面设计

    vs2005注册_vs注册界面设计注册码:KYTYH-TQKW6-VWPBQ-DKC8F-HWC4J找到SETUP文件夹下的setup.sdb,用记事本打开它,找到[ProductKey],将下面的一行序列号删除,改为正式Key,保存后再安装就是正式版了,记住,中间没有横线!!如果先前已经安装好180天的版本,请在添加删除VisualStudio2005时,可以输入序列号,进行升级。找到SETUP文件夹下的setup.

    2022年8月22日
    5
  • 关于模板函数声明与定义的问题[通俗易懂]

    c++primer上说:c++模板函数的声明与定义通常放在头文件中,而普通的函数通常是声明放在头文件中,定义放在源文件中,为什么会有这样的区别呢?模板函数与普通成员函数到底有什么区别?测试代码:tem.h#ifndef_TEM_H#define_TEM_HtemplateTadd(Ta,Tb);//{//returna+b;//}

    2022年4月17日
    42

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号