主要實現(xiàn)功能
網(wǎng)站建設哪家好,找創(chuàng)新互聯(lián)公司!專注于網(wǎng)頁設計、網(wǎng)站建設、微信開發(fā)、成都微信小程序、集團企業(yè)網(wǎng)站建設等服務項目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了柴桑免費建站歡迎大家使用!1、用戶輸入用戶名,在用戶名文件中查找對應的用戶,若無對應用戶名則打印輸入錯誤
2、用戶名輸入正確后,進行密碼匹配。輸入密碼正確則登錄成功,否則重新輸入。
3、連續(xù)輸錯三次密碼則該用戶名被鎖,退出程序
--------------------------------------------------
在程序文件夾下建立一個用戶名、密碼的文件 :user_np.txt和一個用于存放被鎖用戶名的文件:lock.txt
--------------------------------------------------
#setencoding=utf-8 import os,sys #將用戶名文件內(nèi)容讀取到內(nèi)存中 user = open('user_np.txt') account_list = user.readlines() user.closeloginSucess = 0 #控制while循環(huán)退出 lock_n = False #判斷用戶輸入的用戶名是否被鎖的標志位 while True: username = input('please input username:').strip() #strip()函數(shù)是忽略空格 if len(username) == 0: print('輸入用戶名不能為空') continue else : print('輸入用戶名不為空') l = open('lock.txt') l_list = l.readlines() l.close() print(l_list) for j in l_list: j = j.strip('\n') if username == j: print('該用戶已經(jīng)鎖定,請輸入其他用戶名') lock_n = True del j #刪除變量j break else: continue if lock_n is True: lock_n = False continue else: lock_n = False for i in account_list: i = i.split() #split()函數(shù)是對括號中的符號進行切割 if username == i[0]: for x in range(3): password = input('please input password:').strip() if password == i[1]: loginSucess = 2 break else: print('The password is error') #匹配正確或者遇到break程序就跳出循環(huán)體下面語句不執(zhí)行 else: #輸入超過三次,將用戶名寫入鎖文件并打印出來 print('%s ,input password is beyond three times,going to lock'%username) l = open('lock.txt','a') l.write(username+'\n') #將要鎖的用戶名寫入鎖文件并且換行 l.close() view = open('lock.txt') #打開鎖文件 print(view.read()) #打印鎖文件的內(nèi)容,方便自己做調(diào)試 loginSucess = 1 if loginSucess ==2: print('sucess info') break elif loginSucess ==1: print('用戶名被鎖,請重新輸入') else: print('輸入錯誤')