學習Python 登入介面重寫版

2022-09-01 07:48:09 字數 2294 閱讀 9214

要求

1.輸入使用者名稱與密碼

2.驗證成功顯示歡迎頁

3.輸入錯誤3次,鎖定使用者名稱

也是看了非常多的大神,老師,師兄的**啟發,才寫出如下的重寫版

這條**也是瞎幾把搞才研究出來的,具體原理不是很懂

name = dict(k.strip().split('=') for k in name_list.readlines())

如果把 strip() 和 split('=') 的位置互換一下 那麼就會報錯 原因估計是 strip() 只能對 str型別操作

已知bug:

1.輸入2次同乙個正確的使用者名稱和錯誤的密碼,第3次輸入另乙個正確的使用者名稱和錯誤的密碼,則鎖定第3次輸入的使用者名稱

使用者名稱與密碼檔案  name_list.ini 內容如下:

mask=123

jake=123qq

qb11=123qwe

鎖定使用者列表檔案 lock_list.ini   內容預設為空:

i =0

g = 3w =0

j =0

print('''

*************************************

歡迎使用登入系統

*************************************

''')

while i < 4:

i = i + 1i_name = input('

請輸入您的使用者名稱:

') #

輸入使用者名稱

name_list = open('

name_list.ini

','r

') #

讀取使用者名稱和密碼字典

name = dict(k.strip().split('

=') for k in

name_list.readlines())

name_list.close()

lock_list = open('

lock_list.ini

','r

')#讀取被鎖定使用者名稱

lock = [k.strip() for k in

lock_list.readlines()]

lock_list.close()

lk = i_name in lock #

輸入的使用者名稱 對比 鎖定列表

f = i_name in name #

輸入的使用者名稱 對比 註冊已使用者名稱

if len(i_name) == 0 or j == 3: #

檢查輸入的使用者名稱是否為空

print('

您輸入的使用者名為空')

j = j + 1

if j == 3:

print('

您已經連續輸入3次空使用者名稱了,系統強制退出')

i = 4

elif lk ==true:

print('')

i = i + 4

elif f ==false:

w = w + 1

print('

您輸入的使用者名稱無效,請重新輸入')

if w == 3:

print('

您已經輸入了3次數無效使用者名稱了,系統強制退出,')

i = 4

elif f == true: #

如果使用者名稱正確 則取其密碼,讓使用者輸入密碼

mima =name[i_name]

i_mima = input('

請輸入您的密碼:')

if i_mima ==mima:

print('

歡迎光臨,%s

'%i_name) #

密碼正確 顯示歡迎頁

i = 4

else

: g = g - 1

print('

使用者名稱或密碼錯誤\n(您還有%s次機會)

'%g)

if g ==0:

print('

您已經輸入了3次錯誤的密碼,已被系統鎖定')

a = open('

lock_list.ini

','a

')#密碼錯誤3次,寫入使用者名稱到鎖定列表

a.write(str(i_name + '\n'

)) a.close()

i = 4

可否再精簡**?

可否加強功能?

python編寫登入介面

要求如下 已鎖定使用者 檔案形式如下 使用者名稱和密碼 檔案形式如下 python 如下 usr bin env python coding utf 8 import sys retry limit 3 retry count 0 account file accounts.txt lock fil...

例項 使用者登入(python 版)

建立使用者表userinfos 注意 需要對密碼進行加密 如果使用md5加密,則密碼包含32個字元 如果使用sha1加密,則密碼包含40個字元,推薦使用這種方式 create table userinfos id int primary key auto increment,uname varcha...

Python 登入介面簡單實現

實現 因為做持久化鎖定,所以把使用者資訊存到檔案裡,先做乙個使用者的多個使用者的邏輯會更複雜點 流程圖如下 賬號儲存檔案txt 獲取系統賬號與密碼 user open 123.txt r f user.read user.close val f.split 寫乙個迴圈迴圈3次 for i in ra...