python请用自定义函数实现账号密码的输入_Python登录注册验证功能实现

简介

本次项目登录注册验证是对之前学习知识点的加深学习,这次项目的练习的知识点有函数、判断语句、循环语句、文件操作等。

项目流程

运行代码之后,输出登录或者注册选项。

当选择登录之后,输入用户名密码,如果该用户信息没有注册过,就输出登录失败,如果该用户信息已经注册过,就显示登录成功。

当选择注册之后,输入用户名密码,如果该用户信息没有注册过,就输出注册成功,如果该用户信息已经注册过,就显示用户名已经存在,注册失败。

代码流程

运行代之后首先执行main()函数,mian()函数中接收用户输入的用户名和密码,用户选择登录,就调用loing()函数,将用户输入的信息在和存放用户信息的文件中的信息进行比对,如果有该用户的信息就登录成功,否则失败,用户选择注册,在接收到用户输入的用户名密码之后,调用register()函数,在这里将调用 user_exist()函数进行对用户输入的信息进行判断,如用户输入的信息存在存放用户信息的文件里,输出注册失败,否则注册成功。

在login()和user_exist()函数中调用了错误处理函数。

错误处理函数介绍

try:

.....

except IOError:

......

ry中的代码执行没有出现错误,就不再执行except中的代码,如果try中的代码出现错误,就执行except中的代码。

代码实现

def login(username, password):

"""

用于用户名和密码的验证

:param username:用户名

:param paaword:密码

:return:True,用户验证成功;False,用户验证失败

"""

try:

f = open("users", "r", encoding="utf-8")

for line in f:

line = line.strip() # 清除换行符

# 无参数时移除两侧空格,换行符

# 有参数时移除两侧指定的字符

line_list = line.split("$")

if line_list[0] == username and line_list[1] == password:

# print("成功")

return True

return False

except IOError:

return False

def register(username, password):

"""

注册用户

1、打开文件

2、用户名$密码

:param username:用户名

:param password:密码

:return:True:注册成功;

"""

with open("users", "a", encoding="utf-8") as f:

temp = "\n" + username + "$" + password

f.write(temp)

return True

def user_exist(username):

"""

检测用户名是否存在

:param username:要检测的用户名

:return: True:用户名存在;False:用户名不存在

"""

# 一行一行的去查找,如果用户名存在,return True:False

try:

with open("users", "r", encoding="utf-8") as f:

for line in f:

line = line.strip()

line_new = line.split("$")

if line_new[0] == username:

return True

return False

except IOError:

return False

def main():

while True:

print("欢迎登录xxx系统")

arg = input("1:登录,2:注册")

if arg == "1":

uer = input("请输入用户名:")

pwd = input("请输入密码:")

if login(uer, pwd):

print("成功")

break

else:

print("失败")

elif arg == "2":

user = input("请输入用户名:")

pwd = input("请输入密码:")

is_exist = user_exist(user)

if is_exist:

print("用户名已经存在,注册失败")

else:

if register(user, pwd):

print("注册成功")

continue

else:

print("注册失败")

else:

print("输入错误,请重新输入")

main()

这次的项目仅仅使用了之前学习的部分知识,比较简单的一个项目,之后会继续加深学习。

本文标题: Python登录注册验证功能实现

本文地址: http://www.cppcns.com/jiaoben/python/230595.html

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值