python-注册:注册的账号写入txt文件

    需求:
           注册
                 1、三个变量username、password、cpassword
                 2、注册时输入的账号必须是没有注册过的
                      两次密码必须输入一致
                      账号、密码的长度要在6-10之间,不允许输入空格或换行符
                      账号不区分大小写
                      注册完成之后,存到文件里面
 
    思路:
              1、验证账号是否重复注册:把读取到的文件内容转为字典的形式,然后去判断是否重复注册,因为字典的k值是唯一存在的       
 
 1 fr = open('user')  # 打开存账号的文件
 2 res = fr.read()  # 读取文件的所有内容
 3 fr.close()  # 关闭文件
 4 user_list = res.split()  # 默认以空格或者换行符分隔字符串,返回值为list
 5 user_dic = {}  # 定义一个空字典,存放所有账号
 6 for i in user_list:  # 循环列表,取出列表里的每一个值,然后存到字典里
 7     username = i.split(',')[0]
 8     password = i.split(',')[1]
 9     user_dic[username] = password
10 
11 fw = open('user', 'a')
12 for i in range(3):
13     user = input('账号:').strip().lower()  # 去除空格或换行符,输入的字母全部转为小写
14     pd = input('密码:').strip()
15     cpd = input('确认密码:').strip()
16     if len(user) not in range(6, 11) or len(pd) not in range(6, 11):
17         print('账号/密码长度必须在6-10之间')
18     elif pd != cpd:
19         print('两次输入的密码不一致')
20     elif user in user_dic:
21         print('用户名重复!')
22     else:  # 账号和密码合格则写入文件
23         fw.write('%s,%s\n' % (user, pd))
24         print('注册成功'.center(50, '*'))
25         break
26 else:
27     print('输入错误次数过多')

 

posted @ 2018-11-30 17:41  起名字好麻烦  阅读(1562)  评论(0编辑  收藏  举报