# 注册功能:
def regist(username,password):
with open('memory',mode='r+',encoding='utf8') as f1:
for line in f1:
if line == ' ': #防止空行
continue
index = line.find('_') #python中find()方法和index()功能差不多,但index如果没有找到子串时,就会报错,而find返回一个-1.
memory_name = line[0:index] #find()和index()的区别https://www.cnblogs.com/40kuai/p/6262297.html
if username == memory_name:
return False
else: #这里要注意else的放置,如果放在for的代码块里,就跟这for循环多次输入了
f1.write(''+username +'_'+ password+'\n')
return True
res = regist(input('请输入用户名:'),input('请输入密码:'))
if res:
print('注册成功')
else:
print('注册失败,请重新注册')
# 登录功能
# def login(username,password):
# with open('memory',mode='r+',encoding='utf8') as f2:
# for line in f2:
# if line.strip() == username +'_'+password:
# return True
# else: #这里的else也是,如果和if同级的话,由于return的存在,for循环一次就退出函数的调用了
# return False
# for i in range(2,-1,-1):
# res = login(input('请输入用户名:'),input('请输入密码:')) #这一步注意,省略了两行代码,还可以把res去掉,再省略一行
# if res:
# print('恭喜你,登录成功。')
# break
# else:
# print('登录失败,还有%d次机会'%i)