#author lvzunhua
deflogin():
with open(
'user
','r
',encoding ='
utf-8
') as f: #
開啟使用者列表配置檔案
con = f.readlines()#
把讀到的使用者按每行當做乙個元素返回到乙個列表中
allname= #
初始化乙個使用者列表
allpasswd=#
初始化使用者密碼
for i in range(0,len(con)): #
獲取con列表的長度
l=con[i]#
獲取每一行的內容並放到變數中,方便下面分割獲取使用者名稱和密碼
ls = l.split()#
把取到的每一行按空格分割成返回到乙個列表中
把每一行分割取到的使用者名稱追加到初始化的使用者列表中
#print(allname)
#print(allpasswd)
with open('
lockname
','r
',encoding = '
utf-8
') as f:
lname=f.readlines() #
開啟鎖定使用者配置檔案列表,並把取到的使用者名稱按每一行返回到乙個列表中 comment-注釋、說明
for i in range(3):#
迴圈三次,三次輸入密碼錯誤鎖定使用者。
username = input('
login user:
')#讓使用者輸入使用者名稱,並獲取使用者名稱放到變數中
userpasswd = input('
login passwd:
')#獲取使用者的密碼
if username not
in allname:#
判斷使用者名稱是否在不在初始化使用者列表中
print('
no this account!')
elif (username+'
\n') in lname:#
使用者名稱在鎖定的使用者列表中
print('
your name has been locked! please contact admin!')
else
: passwd_index=allname.index(username)#
使用者名稱正常,獲取使用者名稱在初始化列表中的索,使用者名稱和密碼在列表中的索引相同,根據索引判斷使用者名稱密碼是否正確
if userpasswd ==allpasswd[passwd_index]:
print ('
login success!!!')
break
else
:
print('
password id error!!!')
if i == 2:#
使用者名稱正確,密碼不正確,第三次輸入密碼錯誤,列印錯誤資訊,並把使用者鎖定。
print('
excessive passwd error,your account has been locked! please contact admin!')
nf = open('
lockname
','a
',encoding='
utf-8')
nf.write(username+'\n'
) nf.close()
login()
python學習之路 使用者登入作業練習
如下 coding utf 8 使用者登入系統 username abc passwd 1234 count 0 while count 3 username str input 請輸入使用者名稱 passwd str input 請輸入密碼a if username username and pa...
8 作業 使用者登入,3次鎖定
輸入使用者名稱 passwd input 輸入密碼 if user username and passwd password print 登入成功!break else print 登入失敗,請重新輸入!count 1 if count 3 print 登入失敗錯誤過多,程式將退出!break 執行...
使用者登入 單點登入
首先是為啥要用單點登入的問題,單點登入也就是sso sso是在多個應用系統中,使用者只需要登入一次就可以訪問所有相互信任的應用系統。1 任何系統都必須去登陸伺服器進行登入 2 伺服器就記住了登入狀態 3 其他系統訪問受保護資源,需要再次登入,跳轉到sso server登入的時候,伺服器告訴客戶端,已...