python 练习一,,登录接口练习要求:读


登录接口练习

要求:读取帐号文件,登录三次错误密码将锁定并写入锁定文件

#python3.6登录接口练习#_*_coding:utf-8_*_importsysimportosimportgetpassi=0whilei<3:#只要用户登录异常不超过3次就不断循环name=input("请输入用户名:")#lock_file=open(‘account_lock.txt‘,‘r+‘)#当用户输入用户名后,打开LOCK文件以检查是否此用户已经LOCK了(使用with打开)withopen(‘account_lock.txt‘,‘r‘)aslock_file:lock_list=lock_file.readlines()forlock_lineinlock_list:#循环LOCK文件lock_line=lock_line.strip(‘\n‘)#去掉换行符ifname==lock_line:#如果LOCK了就直接退出sys.exit(‘用户{_name}已经被锁定,退出‘.format(_name=name))#user_file=open(‘accounts.txt‘,‘r‘)#打开帐号文件(使用with打开)withopen(‘accounts.txt‘,‘r‘)asuser_file:user_list=user_file.readlines()foruser_lineinuser_list:#对帐号文件进行遍历(user,password)=user_line.strip(‘\n‘).split()#分别获取帐号和密码信息ifname==user:#如用户名正常匹配j=0whilej<3:#只要用户密码异常不超过3次就不断循环passwd=getpass.getpass(‘请输入密码:‘)#输入隐藏密码ifpasswd==password:#密码正确,提示欢迎登录print(‘欢迎登录管理平台,用户%s‘%name)sys.exit(0)#正常退出else:ifj!=2:#j=2时,是最后一次机会,不用在提示还剩余0次机会了print(‘用户%s密码错误,请重新输入,还有%d次机会‘%(name,2-j))j+=1#密码输入错误后,循环值增加1else:withopen(‘account_lock.txt‘,‘a+‘)aslock_file:#(使用with再次打开)lock_file.write(name+‘\n‘)#密码输入三次错误后,将该用户追加到LOCK文件sys.exit(‘用户%s达到最大登录次数,将被锁定并退出‘%name)else:pass#当用户没匹配时,跳过并继续循环else:ifi!=2:#i=2时,是最后一次机会,不用在提示还剩余0次机会了print(‘用户%s不存在,请重新输入,还有%d次机会‘%(name,2-i))i+=1#当用户输入错误时,循环值增加1else:sys.exit(‘用户%s不存在,退出‘%name)#用户输入三次错误后,异常退出#lock_file.close()#关闭LOCK文件,使用with优化后可以去掉#user_file.close()#关闭帐号文件


本文出自 “MG05 學習筆記~” 博客,请务必保留此出处http://pimg2005.blog.51cto.com/842469/1980637

python 练习一

评论关闭