乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      Python3模擬登錄操作實(shí)例分析

       和相品 2019-05-13
      這篇文章主要介紹了Python3模擬登錄操作,結(jié)合實(shí)例形式分析了Python3模擬登陸驗(yàn)證、判斷、文件讀寫等相關(guān)操作技巧,需要的朋友可以參考下

      本文實(shí)例講述了Python3模擬登錄操作。分享給大家供大家參考,具體如下:

      模擬登錄_要求:

      1. 用戶輸入賬號(hào)密碼進(jìn)行登錄
      2. 用戶信息保存在文件內(nèi)
      3. 用戶密碼輸入錯(cuò)誤三次后鎖定用戶

      邏輯圖:

      代碼:

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      16
      17
      18
      19
      20
      21
      22
      23
      24
      25
      26
      27
      28
      29
      30
      31
      32
      33
      34
      35
      36
      37
      38
      39
      40
      41
      42
      43
      44
      #!/usr/bin/env python3
      # Author:Robert
      # --*-- coding: utf-8 --*--
      count = 0  #記錄試錯(cuò)次數(shù),計(jì)數(shù)項(xiàng)賦初始值
      load = True  #完成功能后退出,賦初始值
      file = open("用戶信息文件.txt",'r',encoding='utf-8')
      file_lock = open("鎖定用戶信息文件.txt",'r+',encoding='utf-8')
      line = eval(file.readline())  #將正確信息中的字符串轉(zhuǎn)換成字典(原字符串為字典格式)
      line_list = eval(file_lock.readline())  #將正確信息中的字符串轉(zhuǎn)換成列表(原字符串為列表格式)
      def out():  #定義重復(fù)代碼,目的是幫助跳出while循環(huán)并關(guān)閉已打開的文檔
        global load
        load = False  #賦值load,為了跳出while循環(huán)
        file_lock.close()  #關(guān)閉正確用戶信息文檔
        file.close()  #關(guān)閉鎖定用戶信息文檔
      while load:  #判斷是否已完成功能
        name = input("請(qǐng)輸入用戶名:")
        password = input("請(qǐng)輸入密碼:")
        if name in line and name not in line_list:  #判斷用戶名是否正確,是否已被鎖定
          while count < 3:
            if password == line[name]:  #判斷用戶名是否對(duì)應(yīng)正確的密碼
              print("您已成功登錄")
              out()  #調(diào)用定義out方法
              break
            else#說明未輸入的正確的密碼
              count +=1
              msg_count = '第%s次密碼輸入錯(cuò)誤\n'%(count)  #提示輸入錯(cuò)誤次數(shù)
              print(msg_count)
              if count < 3#小于三次錯(cuò)誤的輸入,可以重新輸入
                password = input("密碼錯(cuò)誤,請(qǐng)重新輸入密碼:"#重新輸入密碼
              elif count == 3#判斷是否已輸錯(cuò)三次
                print("已輸錯(cuò)3次,賬號(hào)已鎖定")
                line_list.append(name)  #將已鎖定信息加入鎖定元組中
                file_lock.seek(0#輸入指針移到開頭,如果不移動(dòng)會(huì)產(chǎn)生多個(gè)元組
                file_lock.write(str(line_list))  #寫入鎖定信息
                file_lock.tell()  #獲取當(dāng)前的輸入指針位置,如果不獲取會(huì)產(chǎn)生多個(gè)元組
                out()
                break
        elif name in line_list:  #判斷用戶名是否在已鎖定用戶名中
          print("該用戶名已被鎖定")
          out()
          break
        else#說明用戶名不在正確用戶名信息中
          print("該用戶名不存在")
          out()

      用戶信息文件.txt

      {"name":"password","XiaoMing":"123456","Robert":"234567","Alex":"345678","haha":"123","hahage":"123","hahage2":"123","hahage3":"123"}

      鎖定用戶信息文件.txt

      ['name']

      更多關(guān)于Python相關(guān)內(nèi)容可查看本站專題:《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python Socket編程技巧總結(jié)》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》及《Python入門與進(jìn)階經(jīng)典教程

      希望本文所述對(duì)大家Python程序設(shè)計(jì)有所幫助。

        本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
        轉(zhuǎn)藏 分享 獻(xiàn)花(0

        0條評(píng)論

        發(fā)表

        請(qǐng)遵守用戶 評(píng)論公約

        類似文章 更多