類比登入Python

來源:互聯網
上載者:User

標籤:程式   name   文法   ccf   提示   解鎖   inpu   day01   round   

  今天看了一個Python的視頻,看完了day01,感覺挺容易的,因為自己在之前已經開始接觸Python,對與Python的基礎文法還是比較熟悉的,但有一些還是比較生疏生疏的,通過接觸作業,開始知道自己的水平有多高,file、字典等掌握的比較生疏一點。現在感覺要好好學,不能那麼心高氣傲了,不在認為Python是那麼簡單了。還是要腳踏實地地走!

  下面的分享一下我寫的類比登入的流程圖及部分代碼:

#!/usr/bin/env python
import sys

username = input("請輸入使用者名稱:")
lock_file = open("lock.txt","r+")                                  #開啟lock檔案,讀取檔案內容到lock_list中
lock_list = lock_file.readlines()
for lock_line in lock_list:                                              #判斷輸入的使用者名稱是否存在於lock中,即鎖定
    lock_line = lock_line.strip("\n")
    if username == lock_line:
        sys.exit("使用者%s已被鎖定,請聯絡管理員..." % username)
else:
userfile_file = open("userfile.txt","r+")                           #如果lock檔案中不存在該使用者,則判斷該使用者是否存在於userfile中
userfile_list = userfile_file.readlines()
    for userfile_line in userfile_list:
        userfile_line = userfile_line.strip("\n").split()
        if username == userfile_line[0] :                               #判斷username是否存在與userfile中,如果存在,往下操作,如果不存在,執行else
            i = 0
while i < 3:
                passwd = input("請輸入密碼:")                          #提示使用者輸入密碼
                if passwd == userfile_line[1]:                            #判斷密碼是否正確
                    input("welcome %s ..." % username)           #如果密碼正確,輸出.....
                    sys.exit(0)                                                #退出程式
                else:
                    i += 1
    print("密碼錯誤,您還有%d次機會輸入" % (3-i))         #如果密碼不正確,提示使用者剩餘輸入次數,只有三次機會
            else:
lock_file.write("\n"+username)                          #如果使用者在三次內均未輸入正確,鎖定該使用者,提示使用者聯絡管理員進行解鎖
                sys.exit("帳號%s已被鎖定,請聯絡管理員解鎖..." % username)
                break
    else:                                                                   #如果使用者不存在,提示使用者不存在該使用者名稱,退出程式
        sys.exit("不存在該使用者%s,請核查..." % username)

lock_file.close()
userfile_file.close()

 

流程圖

 

userfile.txt

 

readme.txt

2017-03-23

00:25:52

 

類比登入Python

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.