要件:
1. ユーザー名とパスワードが正しいかどうかを確認します
2. パスワードを 3 回間違えると、アカウントがロックされます
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 中国語 Web サイトの他の関連記事を参照してください。