函数式编程:用户登录和注册

#!/usr/bin/env python
# -*- coding:utf-8 -*-
##第一种方法,面向过程
'''
user = input("请输入用户名:")
paw = input("请输入密码:")

f = open('db','r',encoding='utf-8')
for line in f:
line=line.strip()
line_list=line.split("$")


if user==line_list[0] and paw ==line_list[1]:
print("登录成功")
break
'''

#第二种方法,函数式编程
def login(user,paw):
"""
登录
:param user:
:param paw:
:return:
"""
f = open('db', 'r', encoding='utf-8')
for line in f:
line = line.strip()
line_list = line.split("$")

if user == line_list[0] and paw == line_list[1]:
# print("登录成功")
return True
return False

def register(user,paw):
"""
注册,已经有的用户名不能重复注册
注册,打开文件,在后面追加 a
用户名$密码
:param user:
:param paw:
:return: 注册成功
"""
with open('db', 'a', encoding='utf-8') as f:
temp = "\n"+user+"$"+paw
f.write(temp)


return True

def user_exist(user):
"""
用户名是否已经存在
一行一行查找,用户名存在,True
:return:
"""
with open('db','r',encoding='utf-8') as f:
for line in f:
line = line.strip()
line_list = line.split("$")
if line_list[0] == user:
return True

return False


print("欢迎登录自学系统")
inp =input("输入1:登录;输入2:注册")
if inp=="1":
user = input("请输入用户名:")
paw = input("请输入密码:")

is_login = login(user, paw)
if is_login == True:
print("登录成功")
else:
print("登录失败")

elif inp=="2":
user = input("请输入用户名")
paw = input("请输入密码:")
is_exist = user_exist(user)
if is_exist:
print("用户名已经存在,无法注册")
else:
result = register(user,paw)
if result:
print("注册成功")
else:
print("注册失败")






猜你喜欢

转载自www.cnblogs.com/huangguabushihaogua/p/9694037.html