python 文件读写基本操作

#work1
'''
文件格式如下
aa bb 0 unlock
cc dd 0 unlock
ee ff 0 unlock
gg hh 0 unlock
11 22 3 locked
22 22 3 locked
'''
flag = True
counter = 0
filePath = 'd:\\test\python1.txt'
while(flag):
    name = input("input your name :")
    password = input("input your password :")
    fileReader = open(filePath,'r')
    try:
        lines=fileReader.readlines()
        flen=len(lines)
        isUserExist = False
        for i in range(flen):
            lineArray = lines[i].strip("\n").split(" ")
            if(name==lineArray[0]):
                   isUserExist = True
                   if('locked'==lineArray[3]):
                        print("name:"+name+ " has locked")
                        flag = False
                   elif(password==lineArray[1]):
                        counter=0
                        lines[i] = lineArray[0]+" "+lineArray[1]+" "+str(counter)+" "+"unlock"
                        open(filePath,'w').writelines(lines)
                        fileReader.close()
                        print("登录成功")
                        flag = False
                   else:
                        counter=int(lineArray[2])+1
                        if(counter>2):
                            lines[i] = lineArray[0]+" "+lineArray[1]+" "+str(3)+" "+"locked"
                            open(filePath,'w').writelines(lines)
                            print("累积3次密码错误用户被锁定,请联系管理员!")
                        else:
                            print("密码错误:还有"+(3-counter)+" 次机会!")
                            lines[i] = lineArray[0]+" "+lineArray[1]+" "+str(counter)+" "+"unlock"
                            open(filePath,'w').writelines(lines)
                   break
            else:
                continue
        if(isUserExist==False):
            print("用户不存在")
            continue
    except Exception as e:
        print(e)
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值