Python練習1 編寫登陸介面

2021-09-30 18:33:51 字數 2501 閱讀 1501

# -*- coding:utf-8 -*-

username =

["usr1"

,"usr2"

,"usr3"

]# 使用者列表

password =

["111"

,"222"

,"333"

]# 密碼列表

flag =[0

,0,0

]# 用於標記當前使用者狀態,初始值為0,鎖定為1

count =

0# 用於控制輸入次數

while

true

: user =

input

("使用者名稱:"

)if user in username:

addr = username.index(user)

if flag[addr]==0

: passwd =

input

("密碼:"

)if passwd == password[addr]

:print

("歡迎"

, username[0]

)break

else

:print

("使用者名稱或密碼錯誤!"

)if count ==2:

print

("三次錯誤,使用者將被鎖定!"

) flag[addr]=1

count +=

1else

:print

("使用者已被鎖定!"

)break

continue

else

:print

("使用者不存在!"

)continue

參考:

# _*_ coding:utf-8 _*_

import sys,os

import getpass

i =0

while i <3:

name =

input

('輸入使用者名稱:'

) lock_file =

open

('locked_usr'

,'r+'

)# 以讀寫模式開啟locked_usr,檢視使用者是否被鎖定

lock_list = lock_file.readlines(

)# 按行讀取後,存入列表

for lock_line in lock_list:

lock_line = lock_line.strip(

'\n'

)# 把每行的換行符處理掉

if name == lock_line:

sys.exit(

'使用者 %s 已經被鎖定,退出'

%(name)

) user_file =

open

('username'

,'r'

)# 唯讀模式開啟username,檢視是否存在該使用者

user_list = user_file.readlines(

)# 按行讀取後存入列表

for user_line in user_list:

(user, password)

= user_line.strip(

'\n'

).split(

)# 去除每行的'\n'後按空格分隔,對應項賦值

if name == user:

j =0while j <3:

passwd =

input

('請輸入密碼:'

)if passwd == password:

print

('使用者%s登陸成功'

% name)

sys.exit(0)

else

:if j!=2:

print

('使用者%s密碼錯誤,請重新輸入,還有%d次機會'

%(name,

3-j)

) j +=

1else

: lock_file.write(name +

'\n'

) sys.exit(

'使用者 %s 達到最大登陸次數,將被鎖定並退出'

% name)

else

:pass

else

:if i !=2:

print

('使用者名稱%s不存在,請重新輸入,還有%d次機會'

%(name,

3-i)

) i +=

1else

: sys.exit(

'使用者%s不存在,退出'

% name)

lock_file.close(

)user_file.close(

)

Python編寫登陸介面

編寫登陸介面 輸入使用者名稱密碼 認證成功後顯示歡迎資訊 輸出三次後鎖定 author baihaoxiang import json 編寫登陸介面 輸入使用者名稱密碼 認證成功後顯示歡迎資訊 輸出三次後鎖定 思路1 使用者名稱和密碼用字典1存datauser 建立乙個使用者名稱和可用的字典2,da...

python入門練習 編寫登陸介面

輸入使用者密碼 認證成功後顯示,歡迎資訊 輸錯三次後鎖定 1.建立使用者資訊文字。2.建立限制名單的檔案。3.限制名單檢測,若符合則不允許登陸。4.使用者名稱密碼判定,若正確則問候並結束。5.若不通過則繼續迴圈,輸入3次則加入限制名單。e python 檔案 入門 locked.txt 呼叫鎖定名單...

編寫登陸介面

需求 知識點1.注意 pycharm 不支援getpass模組 在terminal中 執行 其實際意思就是cmd import getpass password getpass.getpass 請輸入密碼 知識點2.python with open as用法 python基礎 檔案讀寫 with o...