py练习一:登录接口

需求:
编写登录接口
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文件内容


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值