需求:
编写登录接口
1.输入用户名密码
2.认证成功后显示欢迎信息
3.输错三次后锁定
# 连续登录错误次数
count = 3
f = open('userinfo.txt', 'r')
user_infos = {}
for info in f.readlines():
i = info.split(':')
if i[0] != '\n':
user_infos[i[0]] = {'loginname': i[0], 'password': i[1], 'f': i[2]}
f.close()
flag = 0
for i in xrange(count):
if flag == 0:
loginname = raw_input('please enter lognname:')
password = raw_input('please enter password:')
else:
password = raw_input('please enter password again:')
# 用户名正确
if user_infos.has_key(loginname):
u = user_infos[loginname]
# 判断账号是否被锁定
if u['f'] == '1' or u['f'] == '1\n':
print '%s account is locked' % loginname
break
# 判断密码是否正确
if password == u['password']:
print 'login success'
break
else:
flag = 1 # 用户名正确,密码不正确
print 'password is error'
else:
print 'login name %s is not exists' % loginname
else:
# 用户错误次数超过三次,锁定账号
print 'more than 3 times, accout is locked...'
user_infos[loginname]['f'] = '1'
# 更新用户状态
f = open('userinfo.txt', 'w')
for k, v in user_infos.items():
line = v['loginname'] + ':' + v['password'] + ':' + v['f']
if '\n' not in line:
line += '\n'
f.write(line)
f.close()
userinfo.txt文件内容