一个简易登录,注册程序,有的功能没有实现,实现了的部分感觉逻辑也有一些问题。
def get_all_user_info():
"""获取账号文件内容,并且将文件内容转换成字典"""
f = open('files/user.txt', encoding='utf-8')
all_user = {}
for line in f.readlines():
name, pw = line.strip().split(';')
all_user[name] = pw
f.close()
return all_user
def register():
print('~~~~~正在注册~~~~~~')
# 1. 输入账号和密码
username = input('请输入账号(不能包含分号):')
pw = input('请输入密码(不能包含分号):')
if ';' in username or ';' in pw:
print('注册失败,账号或者密码不合法')
return
# 2. 判断输入的账号是否已经注册过
# 1) 获取所有已经注册过的账号
all_user = get_all_user_info()
if username in all_user:
print('注册失败,该账号已经存在!')
return
# 2) 将输入的账号和密码存储到文件中
f = open('files/user.txt', 'a', encoding='utf-8')
f.write(f'{username};{pw}\n')
print('注册成功!')
def login():
print('~~~~~~~正在登录~~~~~~~~')
# 1. 输入账号和密码
username = input('请输入账号:')
pw = input('请输入密码:')
# 2. 判断登录是否成功
# 1)账号是否已经注册
all_user = get_all_user_info()
if username not in all_user:
print('登录失败! 该账号没有注册!')
return
# 2)密码是否正确
if all_user[username] != pw:
print('登录失败!密码不对!')
else:
print('登录成功!')
def welcome():
print('==============================')
print('🌹 1. 登录')
print('🌹 2. 注册')
print('==============================')
value = input('😁请选择:')
if value == '1':
login()
elif value == '2':
register()
else:
print('输入有误!')
if __name__ == '__main__':
welcome()