2017-09-14 14:56:36
功能介紹:
根據輸入的使用者名稱,首先判斷使用者名稱是否在鎖檔案中。
如果不在鎖檔案中,輸入該使用者的密碼,若用使用者名稱和密碼匹配成功,則顯示歡迎資訊;若匹配不成功的次數超過限定輸入次數,則將該使用者寫入到鎖檔案中。
首先,我們不急著寫程式,首先進行需求分析,寫好流程圖:
程式中涉及到兩個檔案:userlist.txt 和 user_locked.txt 分別為 使用者列表、使用者鎖檔案,這兩個檔案和程式需要放在相同資料夾下。
檔案格式(因為比較簡單,就不截圖了):
userlist.txt 為:username|password
user_locked.txt 為:username
(均是每行一條資料)
開始寫程式:
1大功告成!#_*_ coding:utf-8 _*_2#
author:mr.chan3#
date:2017-09-1445
"""需求:
61、輸入使用者名稱密碼並判斷是否匹配
72、登入成功後顯示登入資訊
83、輸錯三次後鎖定該使用者910
本程式包含兩個檔案:
11user_locked.txt # 被鎖的使用者放在該檔案中
12userlist.txt # 使用者列表,包含使用者名稱和密碼
13"""
1415
import
sys16
17def
login(username,password):
18"""
使用者登入函式,判斷使用者名稱和密碼是否正確
"""19 with open("
userlist.txt
", 'r'
) as f:
20for line in
f:21
if [username, password] == line.strip().split('|'
):22
return true #
若使用者名稱和密碼匹配成功,則返回true
2324
definfo():
25"""
登入成功後,顯示歡迎資訊
"""26
iftrue:
27print("
歡迎%s登入
"%username)
2829
defuser_islocked(username):
30"""
判斷輸入的使用者是否在鎖檔案中,若存在,則退出
"""31 with open("
user_locked.txt
",'r
') as f:
32for line in
f:33
if username ==line.strip():
34 sys.exit("
%s is locked!
"%username)
3536
defuser_locked(username):
37"""
使用者鎖檔案,把使用者寫入到該檔案中,使用者就無法登入
"""38 with open("
user_locked.txt
",'a+
') as f:
39f.write(username)
40 f.write('\n'
)41 sys.exit("
您輸入的錯誤次數過多,已被鎖定")
4243
defmain():
44"""
主函式,執行各項操作
"""45
global retry_limit,retry_count,username #
呼叫函式外的全域性變數
46while retry_limit >retry_count:
47 username = input("
請輸入使用者名稱:")
48 user_islocked(username) #
呼叫函式,檢測輸入的使用者是否在鎖檔案中
49 password = input("
請輸入密碼:")
50#呼叫函式,判斷使用者名稱和密碼是否正確
51 f =login(username, password)
52if f: #
若f為true,執行以下操作
53info()
54break
55else:56
print("
使用者名稱或密碼錯誤\n")
57 retry_count += 1
58else
:59 user_locked(username) #
呼叫使用者鎖檔案,如果超出錯誤次數,則執行該函式鎖定使用者
6061 retry_limit = 3 #
輸入的限制次數,若超過則鎖定
62 retry_count = 0 #
使用者輸入次數的計數器
6364
if__name__ == "
__main__":
65 main()
2020 10 6使用者登入介面
public class loginin public boolean checkout else package practice.demo21awt import j ax.swing.import j a.awt.event.actionevent import j a.awt.event.a...
美化VC介面 使用者登入介面
vc開發程式單調的介面相信大家都是深有感觸,提到介面美化程式設計,人們都會說做介面不要用vc寫,太難了。一句俗語 難者不會,會者不難。vc的美化介面程式設計並沒有人們想像的那麼難。這篇文章是我寫的乙個使用者登入介面,但介面被我美化了,我將一步一步的來講解它的美化介面的實現步驟。相信有了這篇文章,你的...
美化VC介面 使用者登入介面
vc開發程式單調的介面相信大家都是深有感觸,提到介面美化程式設計,人們都會說做介面不要用vc寫,太難了。一句俗語 難者不會,會者不難。vc的美化介面程式設計並沒有人們想像的那麼難。這篇文章是我寫的乙個使用者登入介面,但介面被我美化了,我將一步一步的來講解它的美化介面的實現步驟。相信有了這篇文章,你的...