PT--序列化模块

 

# 6、写一个用户注册登陆的程序,每一个用户的注册都要把
# 用户名和密码用字典的格式写入文件userinfo。
# 在登陆的时候,再从文件中读取信息进行验证。
# dic = {'alex':'alex3714'}
import pickle
def register():
    user_name = input('请输入用户名:')
    password = input('请输入密码:')
    dic = {user_name:password}
    with open('userinfo','ab')as f:
        pickle.dump(dic,f)
    print('注册成功')
def login():
    user_name = input('请输入用户名:')
    password = input('请输入密码:')
    with open('userinfo','rb')as f:
        flag = True
        while flag:    # 有多个字典时要用循环是多次取值
            try:
                dic = pickle.load(f)
                print(dic,type(dic))
                for k,v in dic.items():
                    if k == user_name and v == password:
                        print('登录成功')
                        flag = False
                        break
            except EOFError:
                print('登录失败')
                break
while 1:
    content = input('请选择注册和登录(1,注册  2,登录):')
    if content == '1':
        register()
    elif content == '2':
        login()
    else:
        break

 

posted @ 2018-08-22 17:05  葡萄想柠檬  Views(198)  Comments(0)    收藏  举报
目录代码