json数据和文件操作
登录注册系统
数据持久化:
因为需要下一次运行程序的时候可以使用上一次注册的账号,所以已经注册过的账号需要持久化
1)确定持久化对象:所有已经注册过的账号和对应密码
2)创建保存数据的文件
3)确定文件初始内容:一个用户占一行,每一行内容是’用户名;密码’
4)需要数据的时候从文件中获取数据
5)数据发生改变把最新的数据写入文件中
此处为练习:
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