我的精神挺好的呀
1.制作⼀个登录注册系统,要求⽤户信息保存在⽂本⽂件中,能够实现:
a. 输⼊1实现登录功能,输⼊账号和密码,提⽰登陆成功或登录失败。
b. 输⼊2实现注册功能,输⼊账号和密码,能够判断账号是否已存在及注册成功 的操作。
judge = int(input('请输入1或2:'))
if judge == 2 :
f = open(file='./地府登录注册系统.txt', mode='w', encoding='utf-8')
content_zhanghao = input('请输入死者名:')
f.write(content_zhanghao)
f.write(',')
content_mima = input('请输入密码:')
f.write(content_mima)
print('创建成功!')
f.close()
elif judge == 1 :
f = open(file='./地府登录注册系统.txt', mode='r', encoding='utf-8')
content = f.readlines()
new_list = []
for i in content :
new_content = eval(i.replace(',\n',''))
new_list.append(new_content)
result = {key:value for key,value in dict(new_list).items()}
print(result)
(key,value), = result.items()
content_zhanghao = input('请输入死者名:')
content_mima = input('请输入密码:')
if content_zhanghao == str(result.get(key)) and content_mima == str(result.get(value)) :
print('登录成功!生死簿开始翻阅,请稍等~')
else :
print('登录失败,死者名或密码错误')
f.close()
else:
print('请重新输入!')
f.close()
#---------------------------------------------------------------------------
"""
数据持久化方案:
1.需要持久化的数据:所有已经注册过的死者名和密码
2.存到哪儿:userinfo.txt
3.怎么放: [
{'username': 死者名1, 'pw': 密码1},
{'username': 死者名2, 'pw': 密码2},
...]
"""
# 1. 显示主界面
# 1)获取页面内容
f = open('mainPage.txt', 'rt', encoding='utf-8')
page = f.read()
f.close()
while True:
# 2)打印页面内容
print(page)
# 2. 提示灵魂选择功能
value = input('请选择(1~3):')
# 3.根据死者的选择执行不同的操作
if value == '1':
# ================================登录的功能=====================================
# 1. 提示死者输入账号和密码
username = input('请输入账号:')
password = input('请输入密码:')
# 2. 判断是否能够登录成功
# 1)取出之前已经注册过的所有的账号信息
f = open('userinfo.txt', encoding='utf-8')
all_user = eval(f.read()) # type: list
f.close()
for x in all_user:
if x['username'] == username and x['pw'] == password:
print('登录成功!')
print('进入生死簿系统功能.....')
break
else:
print('登录失败!')
elif value == '2':
# ================================注册的功能=====================================
# 1. 提示死者输入死者名和密码
username = input('请输入账号:')
password = input('请输入密码:')
# 2. 判断账号是否已经注册过
# 1)获取已经注册过的所有的死者
f = open('userinfo.txt', encoding='utf-8')
all_user = eval(f.read()) # type: list
f.close()
for x in all_user:
if x['username'] == username:
print('注册失败,该账号已经注册过!')
break
else:
# 3. 死者没有注册过,就可以完成注册
all_user.append({'username': username, 'pw': password})
f = open('userinfo.txt', 'w', encoding='utf-8')
f.write(str(all_user))
f.close()
print('注册成功!')
elif value == '3':
print('退出')
break
else:
print('死者输入有误!')
#-------------------------------------------------------------------------------------
mainPage.txt:
==========================================
*** 👏🏻欢迎来到生死簿管理系统 ***
*** ❀ 1. 登 录 ***
*** ❀ 2. 注 册 ***
*** ❀ 3. 复 活 ***
===========================================
userinfo.txt:
[{'username': 'abc', 'pw': '123123'}, {'username': 'mn', 'pw': '123456'}]