day1_作业(账户登录检测)
程序员文章站
2022-07-06 19:19:19
#!/usr/local/bin/python3 # -*- coding:utf-8 -*- f=open('/users/zhangyu/PycharmProjects/s14/day1/Homework_day1/name_password','r+')#'r+'代表可读可写, # 初始账户密... ......
#!/usr/local/bin/python3 # -*- coding:utf-8 -*- f=open('/users/zhangyu/PycharmProjects/s14/day1/Homework_day1/name_password','r+')#'r+'代表可读可写, # 初始账户密码已存入name_password文件 g=open('/users/zhangyu/PycharmProjects/s14/day1/Homework_day1/Account_lock','r+')#'r+'代表可读可写 #Account_lock为账户锁定文件,用于锁定账户的存取 a=0 while a<3: name= input('Input your name please!') lock_name= g.readline() for x in f: if name==x.strip() and name!=lock_name: print('Hello!',name) password=input('now,please input your password:') d=f.readline()#读取当前行的下一行 if password==d.strip():#strip()方法,删除字符串中的空格/换行等符号 print('Welcome!',name) break if name==lock_name: print('your account:',name,'has been locked!') break a+=1 if name==x.strip(): break print('incorrect input!please input again') f.seek(0)#将文件指针置0,以便x重新遍历文件f g.seek(0) else: print('Sorry!your account will be locked') g.write(name)#3次错误后将账户名b写入lock文件g ''' --------------------------------------------- 尚未实现的功能: 1.Account_lock存入锁定账户问题,代码第四行将'r+'改为'a+',虽然实现了换行存入,但又不能读写。 2.识别账户是否锁定,每次只能识别一个,用name!=(m.strip() for m in g)无法实现,不知道原因。 3.如果3次输入错误,存入锁定文件中的账户只能是最后一次输入的账户名称。 --------------------------------------------- '''
上一篇: redis 源代码阅读与学习笔记(四)