司徒邺

python写注册

# coding = UTF-8           注释格式

import datetime        引用日期

today = datetime.datetime.today().strftime("%Y-%m-%d %H:%M:%S") # 获取到今天的日期,并限定日期格式

# 错误次数3次
for i in range(3):

username = input('请输入你的用户名:').strip()   去除输入值中的空格
passwd = input('请输入你的密码:').strip()
cpasswd = input('请再次输入你的密码:').strip()

file = open('newname.txt','r',encoding='utf-8') 打开文件,文件与运行代码在同意目录时不用加绝对路径,执行文件显示格式
                                    r只读 r+读写 ; 指针在文件开始
                                    w写 w+写读 ; 创建,覆盖,指针在文件开始
                                    a追加写入不可读 a+追加写入 ; 创建 指针在文件尾
                                     根据文件指针判断是否加“file.seek(0)”,将指针移到文件开始位置  
done = 0
data = {}                            定义一个字典
while not done:                        循环读取每一行,若为空则退出循环
aLine = file.readline()
if(aLine != ''):
#print(aLine)
bline = aLine.split(',')              将读取的值根据‘,’切割
#print(bline)
# k=bline[0]
# v=bline[1]
# print(k)
# print(v)
data[bline[0]]=bline[1].strip('\n')        将读取到的k,v形式存入data字典
#data.setdefault(bline)
else:
done = 1
file.close() #关闭文件
#print(data)


if not username or not passwd or not cpasswd:          
print('账号或密码不能为空,请重新输入:')              
# 判断账号密码是否为空                      
elif username in data:
print('账号已注册,请登录!')
# 判断账号是否已存在
elif passwd != cpasswd:
print('密码不一致,请重新输入')
# 判断密码是否一致
elif len(passwd) < 6 or len(passwd) > 12:
print("密码长度必须6-12位")
# 判断密码长度
else:

reg = open('newname.txt','a+',encoding='utf-8')          打开文件准备追加输入
# users = [username,passwd]
users =username+','+passwd+'\n'                    拼接数据加上换行符号
#print(users)
#users_s = [str(n) for n in users]                  
reg.writelines(users)                          将users拼接数据写入文件
reg.seek(0)                                将指针放置初始位置,查看是否写入成功
#print('read',reg.readlines())
reg.close()
# users.append(username)
# passwd.append(passwd)
print('恭喜%s注册成功,今天的日期是%s' % (username, today))
break
# 注册成功,退出

posted on 2018-06-05 17:28  司徒邺  阅读(185)  评论(0编辑  收藏  举报

导航