欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python實現(xiàn)登錄接口的示例代碼

 更新時間:2017年07月21日 15:00:54   作者:Dreamer_qiao  
本篇文章主要介紹了Python實現(xiàn)登錄接口的示例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

之前寫了Python實現(xiàn)登錄接口的示例代碼,最近需要回顧,就順便發(fā)到隨筆上了

要求:

1.輸入用戶名和密碼

2.認證成功,顯示歡迎信息

3.用戶名3次輸入錯誤后,退出程序

4.密碼3次輸入錯誤后,鎖定用戶名

Readme:

1.UserList.txt 是存放用戶名和密碼的文件,格式為:username: password,每行存放一條用戶信息

2.LockList.txt 是存放已被鎖定用戶名的文件,默認為空

3.用戶輸入用戶名,程序首先查詢鎖定名單 LockList.txt,如果用戶名在里面,提示用戶被鎖定,并退出程序

4.如果用戶名不在鎖定名單里,程序?qū)⒉樵冇脩裘麊?UserList.txt ,如果用戶名不在里面,將提示用戶不存在,請重新輸入,三次輸入錯誤,將退出程序

5.如果用戶名在用戶名單里,將提示用戶輸入密碼,密碼正確,顯示歡迎信息;3次輸入錯誤,將鎖定此用戶名(寫入鎖定名單)

流程圖:

代碼:

# Joe Young


import os, sys, getpass

os.system('cls')      #調(diào)用os模塊的system方法傳入'cls'參數(shù),清屏

count = 0          #用戶名登錄次數(shù)計數(shù)

while count < 3:

  username = input('username:')

  lock_file = open('LockList.txt', 'r+')   #打開LockList.txt文件,權(quán)限r(nóng)+(打開用于讀和寫文件。文件指針置于該文件的開頭)
  lock_list = lock_file.readlines()      #使用readlines()方法逐行讀取LockList.txt,生成列表,并賦值給lock_list

  for lock_line in lock_list:
    if username == lock_line.strip('\n'):  #使用strip()方法去掉換行符,判斷username是否在LockList.txt
      print('用戶名 %s 已被鎖定,請聯(lián)系管理員...' %(username))
      sys.exit(1)             #sys模塊的exit()方法表示退出

  with open('UserList.txt', 'r') as user_file:  #打開UserList.txt,權(quán)限只讀
    user_list = user_file.readlines()      #逐行讀取UserList.txt文件,賦值給user_list變量

  for user_line in user_list:
    (user, passwd) = user_line.strip('\n').split(': ') #獲取user,passwd的值,用split(': ')實現(xiàn)分割字符串
    if user == username:                #判斷用戶名是否在UserList.txt文件內(nèi)
      n = 0                      #密碼輸入次數(shù)計數(shù)
      while n < 3:                  #3次輸入機會
        password = getpass.getpass('password:')   #使用getpass模塊的getpass()方法獲取用戶輸入的密碼
        if password == passwd:           #判斷密碼是否匹配
          print('歡迎 %s 登陸系統(tǒng)!' %(username))
          sys.exit(0)
        else:
          if n != 2:               #n=2時,是最后一次機會,不需要提示還剩下0次機會
            print('密碼錯誤,請重新輸入,您還有 %d 次機會\n' %(2-n))
        n += 1                   #密碼輸入錯誤,次數(shù)+1
      else:
        lock_file.write(username + '\n')      #密碼輸入錯誤次數(shù)達到3次,把用戶名寫入LockList.txt文件,鎖定用戶名
        sys.exit('錯誤次數(shù)過多,用戶名已被鎖定...')   #程序退出,并輸出提示
  else:                          #用戶名不存在,執(zhí)行else語句
    if count != 2:                   #count=2時,是最后一次輸入用戶名的機會,不用提示還剩下0次機會了
      print('用戶名不存在,請重試,您還有 %d 次機會\n' %(2-count))
  count += 1                       #用戶名輸入錯誤,count+1

else:                      #用戶名輸入錯誤次數(shù)達到3次
  sys.exit('輸入次數(shù)過多,程序已退出...')    #退出程序,并輸出提示

lock_file.close()                #關(guān)閉LockList.txt文件

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python之打印日志庫(logging)

    Python之打印日志庫(logging)

    這篇文章主要介紹了Python之打印日志庫(logging),具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-09-09
  • Python爬蟲中urllib3與urllib的區(qū)別是什么

    Python爬蟲中urllib3與urllib的區(qū)別是什么

    Urllib3是一個功能強大,條理清晰,用于HTTP客戶端的Python庫。那么Python爬蟲中urllib3與urllib的區(qū)別是什么,本文就詳細的來介紹一下
    2021-07-07
  • Python BS4庫的安裝與使用詳解

    Python BS4庫的安裝與使用詳解

    這篇文章主要介紹了Python BS4庫的安裝與使用詳解,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-08-08
  • Python必備技巧之Pandas數(shù)據(jù)合并函數(shù)

    Python必備技巧之Pandas數(shù)據(jù)合并函數(shù)

    Pandas中一共有五個數(shù)據(jù)合并函數(shù),分別為:concat、append、merge、join、combine,本文詳細講解這五個函數(shù)的使用方法,需要的可以參考一下
    2022-03-03
  • python中的selenium安裝的步驟(瀏覽器自動化測試框架)

    python中的selenium安裝的步驟(瀏覽器自動化測試框架)

    這篇文章主要介紹了python中的selenium安裝的步驟,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-03-03
  • python編程實現(xiàn)清理微信重復(fù)緩存文件

    python編程實現(xiàn)清理微信重復(fù)緩存文件

    這篇文章主要為大家介紹了使用python編程來實現(xiàn)清理微信重復(fù)緩存文件的示例代碼過程,有需要的朋友可以借鑒參考下,希望能夠有所幫助
    2021-11-11
  • 基于python框架Scrapy爬取自己的博客內(nèi)容過程詳解

    基于python框架Scrapy爬取自己的博客內(nèi)容過程詳解

    這篇文章主要介紹了基于python框架Scrapy爬取自己的博客內(nèi)容過程詳解,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-08-08
  • Python2與Python3的區(qū)別實例總結(jié)

    Python2與Python3的區(qū)別實例總結(jié)

    這篇文章主要介紹了Python2與Python3的區(qū)別,結(jié)合實例形式總結(jié)分析了Python2與Python3打印輸出、編碼、數(shù)值運算、異常處理等使用區(qū)別,需要的朋友可以參考下
    2019-04-04
  • tensorflow對圖像進行拼接的例子

    tensorflow對圖像進行拼接的例子

    今天小編就為大家分享一篇tensorflow對圖像進行拼接的例子,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-02-02
  • 基于Python實現(xiàn)PPT合并小工具

    基于Python實現(xiàn)PPT合并小工具

    在日常工作和學(xué)習(xí)中,如果需要將多個PPT文件合并成一個文件,手動操作可能會非常繁瑣和耗時,所以本文將使用Python制作一個簡單的PPT合并小工具,希望對大家有所幫助
    2024-01-01

最新評論