使用者名稱密碼登入小程式及input與raw_input區別。,inputraw_input

來源:互聯網
上載者:User

使用者名稱密碼登入小程式及input與raw_input區別。,inputraw_input

一、此次程式需要實現:

  1、設定固定的使用者名稱密碼

  2、使用者名稱密碼輸入正確列印登入正確資訊

  3、僅僅運行三次登入

二、本次使用的python版本為:

  Windows下版本號碼:

  C:\Users\daisy>python --version
  Python 2.7.13rc1

  Linux下版本號碼:

三、設計思路:

  1、定義使用者名稱變數:USER_name = "admin1"

  2、定義密碼變數:PASSWORD = "admin123"

  3、由於必須實現3次登入可以採用迴圈。

四、程式以windows下程式:

  以下是在pycharm下編寫程式及操作使用raw_input輸入:

USER_name = "admin1"        #定義使用者名稱
PASSWORD = "admin123"     #定義密碼
for i in range(3):                   #執行3次
    input_name = raw_input("input your name:")      #輸入使用者名稱
    input_pass = raw_input("input your passwd:")    #輸入密碼
    if input_name == USER_name and input_pass == PASSWORD:     #條件陳述式如果使用者名稱密碼正確中中執行以下操作不表示登入成功。
        print("you are right.")
        print("login is right.")
        break                                                                                     #登入成功跳出迴圈
    else:
        print("your name is wrong.")                                                   #登入使用者名稱密碼錯誤輸出錯誤。
else:
    print("input too many count.")                                                     #迴圈完成三次登入都不成功輸出。

  執行結果:

  執行三次錯誤使用者名稱和密碼:

  input your name:admin
  input your passwd:admin
  your name is wrong.
  input your name:admin
  input your passwd:admin
  your name is wrong.
  input your name:admin
  input your passwd:passwd
  your name is wrong.
  input too many count.

  執行正確使用者名稱密碼:

  input your name:admin
  input your passwd:admin
  your name is wrong.
  input your name:admin1
  input your passwd:admin123
  you are right.
  login is right.

  在pycharm下編寫程式及操作使用input輸入:

USER_name = "admin1"        #定義使用者名稱
PASSWORD = "admin123"     #定義密碼
for i in range(3):                   #執行3次
    input_name = input("input your name:")      #輸入使用者名稱
    input_pass = input("input your passwd:")    #輸入密碼
    if input_name == USER_name and input_pass == PASSWORD:     #條件陳述式如果使用者名稱密碼正確中中執行以下操作不表示登入成功。
        print("you are right.")
        print("login is right.")
        break                                                                                     #登入成功跳出迴圈
    else:
        print("your name is wrong.")                                                   #登入使用者名稱密碼錯誤輸出錯誤。
else:
    print("input too many count.")                                                     #迴圈完成三次登入都不成功輸出。 

  測試報錯:

  input your name:admin
  Traceback (most recent call last):
    File "C:/Users/daisy/PycharmProjects/s12/day1/login��.py", line 6, in <module>
      input_name = input("input your name:")
    File "<string>", line 1, in <module>
  NameError: name 'admin' is not defined

  Process finished with exit code 1

  原因input與raw_input區別:

  >>> input_name = input("input your name:")
  input your name:23
  >>> type(input_name)
    input your name:23
  >>> type(input_name)
  <type 'str'>                                           #表示字串

  由此可見:input預設輸出為整型,raw_input預設輸出為字串:

  使用input解決方案:(將輸入的值用引號引起來表示是字串 )

  input your name:"admin"
  input your passwd:"admin123"      
  your name is wrong.
  input your name:"admin1"
  input your passwd:"admin123"
  you are right.
  login is right.

  總結:由此可見2.X版本最好使用raw_input輸入字串,那麼raw_input如何輸入數字類型呢?

  以下是方法:

  >>> input_name = int(raw_input("input your name:"))    #採用int表示整型:
  input your name:23
  >>> type(input_name)
  <type 'int'>                                                                 #確實是int類型:

  >>> input_name = float(raw_input("input your name:"))  #採用浮點:
  input your name:23
  >>> type(input_name)
  <type 'float'>                                                                #確實是浮點類型:
  >>>

四、程式以在Linux下程式:  

  [root@localhost ~]# python3 --version    
  Python 3.5.2                                                                 #版本:                  
  [root@localhost ~]# python3
  Python 3.5.2 (default, Apr  9 2017, 00:21:30)
  [GCC 4.4.7 20120313 (Red Hat 4.4.7-18)] on linux
  Type "help", "copyright", "credits" or "license" for more information.
  >>>

  >>> USER_name = "admin1"

  PASSWORD = "admin123"
  # input_num = 1
  >>> >>> ... # input_count = 0
  ... for i in range(1, 4):
  ...     input_name = input("input your name:")
  ...     input_pass = input("input your passwd:")
  ...     if input_name == USER_name and input_pass == PASSWORD:
  ...         print("you are right.")
  ...         print("login is right.")
  ...         break
  ...     else:
  ...         print("your name is wrong.")
  ... else:
  ...     print("input too many count.")
  ...
  input your name:admin
  input your passwd:admin
  your name is wrong.
  input your name:admin1
  input your passwd:admin123
  you are right.
  login is right.
  >>>

  由於3.x版本已經精簡所以使用input不會報錯也不需要將輸入的值用引號引起來表示字元。

  那麼我們測試以下input輸入的類型:

  先輸入數字:

  >>> input_name = input("input your name:")
  input your name:23

  >>> type(input_name)          
  <class 'str'>                                                       #也是字串

  同樣的想在3.X中輸入數字類型可以採用int、float等。可參考上文。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.