1. 程式人生 > >Python學習之編寫登陸認證程序

Python學習之編寫登陸認證程序

inpu file 存儲 提示 用戶鎖定 通過 允許 odin 判斷

需求:

讓用戶輸入用戶名密碼
認證成功後顯示歡迎信息
輸錯三次後退出程序
可以支持多個用戶登錄 (提示,通過列表存多個賬戶信息)
用戶3次認證失敗後,退出程序,再次啟動程序嘗試登錄時,還是鎖定狀態(提示:需把用戶鎖定的狀態存到文件裏)

代碼如下:

 1 # -*- coding: utf-8 -*-
 2 # __date__ = 3/12/2018 
 3 
 4 count = 0
 5 users = {chfang:12345, alice:abcde, admin:admin}         #利用字典存儲多個用戶名/密碼
 6 _name = input("Username: 
") 7 if _name in users: #判斷用戶輸入的用戶名是否在字典中 8 lock_file_name = _name + "_lock.txt" #根據用戶名讀取對應文件中的鎖定狀態碼(0表示允許登錄,1表示帳號被鎖定) 9 with open(lock_file_name, "r") as fp: 10 _lock = fp.read() 11 if _lock == "0": 12 while count < 3: 13 count += 1 14 _passwd = input("
Password: ") 15 if _passwd == users.get(_name): #根據用戶名在從字典中取出其對應的密碼 16 print("登錄成功!歡迎%s" % _name) 17 with open(lock_file_name, "w") as f1: 18 f1.write("0") 19 break 20 else: 21 print("登錄失敗!剩余重試次數%d
" % (3 - count)) 22 with open(lock_file_name, "w") as f1: 23 f1.write("1") 24 elif _lock == "1": 25 print("您的賬戶已被鎖定,請聯系管理員!") 26 else: 27 print("狀態文件不能為空,請聯系管理員!") 28 else: 29 print("用戶不存在!") 30 print("-----------------------------") #僅作結束提示用途
基礎功能均能實現。

Python學習之編寫登陸認證程序