Python實現(xiàn)登陸文件驗證方法
代碼主要功能:
利用Python實現(xiàn)簡單的登陸驗證,代碼主要有兩個部分組成:
第一部分:登陸頁面,作用是實現(xiàn)用戶名和密碼的輸入
利用兩個輸入函數(shù)input()來實現(xiàn)對用戶名和密碼的輸入
第二部分:文件驗證,作用是對輸入的信息進行驗證
1.用戶名的驗證,首先對存儲用戶名和密碼的信息讀取,然后再把輸入的用戶名和從文件中讀取的用戶名進行比對,如果比對成功則進行下一步的密碼驗證,如果沒有實現(xiàn)則提示重新輸入密碼,對密碼的驗證也有一個輸入上限,當密碼輸入錯誤3次,程序退出。否則驗證成功。
登陸頁面代碼:
import text #text為文件名:text.py 用來實現(xiàn)文件驗證 print("歡迎使用登陸") username = input("請輸入用戶名:") while text.CheckUsername(username)==-1: username = input("沒有該用戶\n請輸入用戶名:") else: n=text.CheckUsername(username) password = input("請輸入密碼:") text.CheckUser(n,password)
文件驗證代碼:
import pickle def CheckUsername(name):#檢驗是否有該用戶名 ff = open("D:\\test.txt", "rb") n = pickle.load(ff) # print(n) # print(n[0][0]) # print(len(n)) ff.close() for i in range(len(n)): if name == n[i][0]: return i return -1#用來返回用戶名所在位置 def CheckUser(x,psd):#x為用戶名位置,pwd為密碼 ff = open("D:\\test.txt", "rb") n = pickle.load(ff) # print(n) # print(n[0][0]) # print(len(n)) ff.close() i=1 while n[x][1]!=psd and i<3: psd=input("請再次輸入密碼:") i+=1 else: if i<3: print("登陸成功!") else: print("3次輸入密碼錯誤!已鎖定")
運行結果截圖:
成功登陸頁面:
驗證用戶名頁面:
驗證密碼頁面:
附加內(nèi)容:
用戶名和密碼在文件的存儲方式是一個列表:
import pickle s=[["aaa","111"],["bbb","222"],["ccc","333"]] f = open("D:\\test.txt","wb") try: pickle.dump(s,f) except: print("輸入異常") finally: f.close()
相關文章
基于Python編寫一個監(jiān)控CPU的應用系統(tǒng)
在使用電腦辦公時,有時候不知道哪些軟件或進程會占用大量的資源,導致進行其他任務時出現(xiàn)變慢、卡頓等現(xiàn)象。因此,實時監(jiān)控系統(tǒng)的資源就變得非常重要。本文用Python編寫了一款超治愈的RunCat監(jiān)控應用系統(tǒng),需要的可以參考一下2022-06-06Python使用Selenium時遇到網(wǎng)頁<body>劃不動的問題解決方法
如果在使用 Selenium 時遇到網(wǎng)頁的 <body> 劃不動的問題,這通常是因為頁面的滾動機制(例如,可能使用了一個具有固定高度的容器或自定義的滾動條)導致無法通過簡單的 JavaScript 實現(xiàn)滾動,可以通過以下方法來解決該問題2024-10-10Python解析Excle文件中的數(shù)據(jù)方法
今天小編就為大家分享一篇Python解析Excle文件中的數(shù)據(jù)方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-10-10Python實現(xiàn)帶參數(shù)與不帶參數(shù)的多重繼承示例
這篇文章主要介紹了Python實現(xiàn)帶參數(shù)與不帶參數(shù)的多重繼承,結合具體實例形式對比分析了Python實現(xiàn)帶參數(shù)與不帶參數(shù)的多重繼承相關操作技巧,需要的朋友可以參考下2018-01-01