2017-06-17
需求說明:
1.輸入使用者名稱和密碼
2.對密碼和使用者名稱進行驗證,驗證通過則顯示歡迎資訊
3.密碼輸錯三次後鎖定使用者
思路:1.account.txt是存放使用者id和密碼的檔案
2.lock.txt是存放被鎖定使用者id的檔案,預設為空
3. 判斷使用者是否在黑名單lock.txt中
4. 判斷使用者密碼是否正確,三次失敗後,將使用者id加入黑名單中
**實現:
1#-*- coding: utf-8 -*-
2 count = 0 #
計數器,記錄使用者輸入密碼的次數
3 lock = #
定義乙個空列表
4 user_pass =
5 flag = 1
6 username = raw_input("
請輸入你的名字:")
7 f = open("
lock.txt
","r+
") #
讀取黑名單的內容
8 lock_list =f.readlines()
9f.close()
10for lock_line in lock_list: #
遍歷黑名單檔案內容到lock列表中
11 line = lock_line.strip('\n'
)1213if username in lock: #
判斷輸入的使用者名稱是否在黑名單中
14print("
您的 %s 使用者已經在黑名單中
" %(username))
15 exit() #
退出程式
16else:17
while count < 3:
18 count = count + 1
19 passwd = raw_input("
請輸入您的密碼: ")
20 f = open('
account.txt
', 'r'
)21 user_file = f.readlines() #
讀取account.txt中的使用者名稱和密碼
22f.close()
23for i in
user_file:
24 user_pass =i.strip().split()
25if username == user_pass[0] and passwd == user_pass[1]: #
賬號密碼正確則提示登入成功,退出迴圈
26print("
登入成功...")
27 flag =true
28exit()
29else:30
continue
31if flag is
true:
32break
33else:34
if count == 3: #
輸錯3次密碼,則將使用者追加到黑名單
35print("
您的賬戶已被鎖定...")
36 f = open("
lock.txt
","a")
37 f.write('
%s\n
' %username)
38f.close()
39break
待優化:
1. 沒有判斷使用者不存在account.txt檔案中的情況
2.三次失敗追加進黑名單的使用者,密碼正確仍能登入
8 作業 使用者登入,3次鎖定
輸入使用者名稱 passwd input 輸入密碼 if user username and passwd password print 登入成功!break else print 登入失敗,請重新輸入!count 1 if count 3 print 登入失敗錯誤過多,程式將退出!break 執行...
Python3爬蟲如何模擬登入?
專業的術語,總是讓我們聽得雲裡霧裡,但是總的來說,大家應該都知道爬蟲的基本流程吧,首先是將自己進行偽裝,跟乙個正常的登入使用人員一樣,但是最終,別人只是看一遍知識,而我們是需要進行知識的獲取的,這也就學會爬蟲第一步要知道的內容,好啦話不多說,大家來了解看下吧 先登入成功1次,獲取到攜帶登陸資訊的co...
python 登入賬戶失敗三次,賬戶自動鎖定
題目需求 1.輸入使用者名稱密碼 2.認證成功後顯示歡迎資訊 3.輸錯三次後鎖定 username zhangsunan passwd 123456 count 0 with open blacklist mode r encoding utf8 as f 開啟黑名單 l list f.readli...