需求:
1. 用户登录,判断用户名密码是否正确
2. 密码输入三次不对则锁定账号
3. 锁定账号无法登录
分析:
1. 输入账号,判断账号是否存在,即账号是否在账号文件中存在;
2. 如果账号存在,则判断密码是否正确,如果密码正确,则登录成功,密码不对,提示再次输入,超过三次,锁定账号,并写入锁定文件;
3. 如果账号不存在,则提示账号不存在
1 # -*- coding:utf-8 -*- 2 # LC 3 username = input("please input your username:") #输入用户名 4 #检查用户名是否被锁住 5 lock_read = open("lock_file.txt","r") 6 for lock in lock_read: 7 lock_user = lock.strip() #取出lock文件里面的用户信息 8 if username == lock_user: 9 print("You have been locked!")10 break11 else:12 continue13 lock_read.close() #读取完毕14 15 if username != lock_user:16 password = input("please input your password:") #如果用户没有再lock文件中,则输入密码17 with open("account_file.txt") as user_info: #打开用户账号文件18 for account in user_info: #查看输入的用户是否再账号文件内19 account_user = account.strip().split(" ")[0]20 account_pass = account.strip().split(" ")[1]21 if username == account_user: #如果输入的用户名在用户文件中存在22 if password == account_pass:23 print("welcome to login") #密码正确,则判断登录成功24 break25 else:26 print("wrong password!") #否则密码错误,重新输入密码,即可用再输入两次27 for count in range(0,2):28 count = count + 129 password = input("please input your password:")30 if password == account_pass:31 print("welcome to login") #如果再次输入的密码正确,则跳出32 break33 else:34 print("wrong password")35 if count == 2: #如果三次输错,则写入lock文件中,采用追加写入的方式36 lock_write = open("lock_file.txt","a+")37 lock_write.write("\n")38 lock_write.write(username)39 lock_write.close()40 if username!=account_user: #如果账号文件内没有此账号,则提出没有此用户信息41 print("No this user")
账号文件:
account_file.txt
clv 123gl 123
锁定文件:
lock+_file.txt
1 clv
初次编写,看老男孩视频,想了很久,折腾了个大概,还是蛮开心的
以上是用户登录程序怎么实现?的详细内容。更多信息请关注PHP中文网其他相关文章!