import os
# 判断文件是否存在
if not os.path.exists('error.txt'):
f = open('error.txt', 'w')
listname = []
else:
# 读取文件内容
f = open('error.txt', 'r')
listname = f.readlines()
f.close()
# 初始化变量
error = 0
lastname = ''
# 多次判断,如果同一账号连续输入错误三次,就锁定该账号,如果不是连续就重新判断错误次数
while True:
name = input('please input you name:')
password = input('input you password:')
# 输入信息不能不能为空
if name == '' or password == '':
print('can\'t input empty')
continue
else:
# 判断是否在黑名单
if name + '\n' in listname:
print('this name is lock username')
break
# 判断账号密码是否正确(只判读了一个账号,要多账号就建立一个文件,通过split分割,然后循环判断)
elif name == 'xh4528' and password == '123456':
print('welcome xh4528')
break
else:
if lastname == name: # 判断当前用户名是不是上次用户名
error += 1 # 错误次数+1
if error == 3: # 错误三次就加入黑名单(如果不连续同一个账号错误三次,可以在黑名单加上错误次数)
# 将错误账号写到黑名单
print('locking this username: %s' % name)
with open('error.txt', 'a') as f:
f.write(name + '\n')
break
else:
error = 1
lastname = name
exit()