黄色网页视频 I 影音先锋日日狠狠久久 I 秋霞午夜毛片 I 秋霞一二三区 I 国产成人片无码视频 I 国产 精品 自在自线 I av免费观看网站 I 日本精品久久久久中文字幕5 I 91看视频 I 看全色黄大色黄女片18 I 精品不卡一区 I 亚洲最新精品 I 欧美 激情 在线 I 人妻少妇精品久久 I 国产99视频精品免费专区 I 欧美影院 I 欧美精品在欧美一区二区少妇 I av大片网站 I 国产精品黄色片 I 888久久 I 狠狠干最新 I 看看黄色一级片 I 黄色精品久久 I 三级av在线 I 69色综合 I 国产日韩欧美91 I 亚洲精品偷拍 I 激情小说亚洲图片 I 久久国产视频精品 I 国产综合精品一区二区三区 I 色婷婷国产 I 最新成人av在线 I 国产私拍精品 I 日韩成人影音 I 日日夜夜天天综合

Python如何獲取用戶輸入?

系統(tǒng) 2443 0

Python如何獲取用戶輸入?_第1張圖片

文 | 天罡君

本文首發(fā)于公眾號「猿天罡」,轉(zhuǎn)載請注明出處,謝謝!

有時候,我們編寫的程序需要從用戶那兒“拿到”一些數(shù)據(jù)才能繼續(xù)執(zhí)行下去,比如,判斷某人是否到了法定投票年齡,需要用戶自己輸入名字和年齡才行。

Python要“拿到”用戶輸入的數(shù)據(jù)比起Java來可簡單多了,只需要學會 input() 方法即可。

下面我們一起來學習一下 input() 函數(shù)的基本用法,邁出編寫交互式程序的第一步!

1.函數(shù)input()的工作原理

input() 方法會先向控制臺輸出提示語(如果你設置了的話,后面會講),然后暫停程序,等待用戶輸入一些文本數(shù)據(jù)。獲取到用戶輸入的數(shù)據(jù)后,Python將其存儲在一個變量中,以便之后使用。

舉個例子,下面的程序讓用戶輸入年齡(暫時不判斷是否可以投票),再將用戶年齡打印出來:

            
              age 
              
                =
              
              
                input
              
              
                (
              
              
                "小盆友,今年多大啦?請在下方輸入你的年齡:\n"
              
              
                )
              
              
                print
              
              
                (
              
              
                "我今年 "
              
              
                +
              
               age 
              
                +
              
              
                " 歲"
              
              
                )
              
            
          

函數(shù) input() 接受一個參數(shù),即要向用戶顯示的提示或說明,讓用戶知道該如何做。

在上面的示例中,我們傳給 input() 函數(shù)的參數(shù)是 小盆友,今年多大啦?請在下方輸入你的年齡:\n 。程序會把這個參數(shù)輸出到控制臺,用戶可以看到這個參數(shù)(提示)。

然后用戶根據(jù)提示輸入自己的年齡,輸入完成后,當用戶按下回車鍵,程序會繼續(xù)執(zhí)行,并將用戶輸入存儲在變量 age 中,最后被我們打印輸出。

圖1-1

說明一下,不同IDE的控制臺可能有細微的區(qū)別,我用的是PyCharm,用戶輸入的內(nèi)容是彩色的。如果你用的是別的IDE沒有彩色可別大驚小怪哦。

別看上面程序短小,其實暗含很多信息:

  1. 如果需要給用戶提示信息,就把提示信息(通常是字符串)傳給 input() 方法。當然,你也可以什么也不傳,程序照樣正常執(zhí)行,就是用戶體驗不太好;

  2. 不論用戶輸入的是什么,Python都會將其轉(zhuǎn)化成str類型。

關于第二點,我們來具體看看:

            
              age 
              
                =
              
              
                input
              
              
                (
              
              
                "小盆友,今年多大啦?請在下方輸入你的年齡:\n"
              
              
                )
              
              
                print
              
              
                (
              
              
                type
              
              
                (
              
              age
              
                )
              
              
                )
              
            
          

我們把變量 age 的數(shù)據(jù)類型輸出看看:

可以看到輸入的"18"確實是str類型,這也就解釋了為什么上面的代碼中 age 可以不做轉(zhuǎn)化直接與字符串進行拼接了。

2.投票程序

知道了 input() 函數(shù)的基本用法之后,其實我們已經(jīng)能夠?qū)崿F(xiàn)投票程序了。不過在此之前還需要惡補一個小知識點。

我們知道 input() 函數(shù)獲取到的用戶輸入理論上都是str類型(字符串)。

但是投票程序需要用數(shù)字去比較大小,要知道 "18" 18 是不一樣的,前者是字符串,后者是數(shù)字,只有數(shù)字18才可以直接進行大于、小于或等于之類的比較。

問題:怎么把str類型轉(zhuǎn)化成整數(shù)類型呢?

答:用函數(shù) int() ,參數(shù)是要轉(zhuǎn)化的字符串。

            
              age 
              
                =
              
              
                input
              
              
                (
              
              
                "小盆友,今年多大啦?請在下方輸入你的年齡:\n"
              
              
                )
              
              
                print
              
              
                (
              
              
                type
              
              
                (
              
              age
              
                )
              
              
                )
              
              
                # 把str類型轉(zhuǎn)化成int類型
              
              
n 
              
                =
              
              
                int
              
              
                (
              
              age
              
                )
              
              
                print
              
              
                (
              
              
                type
              
              
                (
              
              n
              
                )
              
              
                )
              
            
          

我們把str類型的變量 age 轉(zhuǎn)化成了int類型并將其賦值給變量 n ,所以 type(n) 輸出的應該是int類型。

圖2-1

從圖中可以看到,真的轉(zhuǎn)化成功了。

**總結(jié):**str類型轉(zhuǎn)int類型,使用 int() 函數(shù),被轉(zhuǎn)化的字符串必須形式上是整數(shù)但類型是str。

現(xiàn)在萬事俱備,一起來實現(xiàn)投票程序吧:

            
              name 
              
                =
              
              
                input
              
              
                (
              
              
                "請輸入你的姓名:"
              
              
                )
              
              
age 
              
                =
              
              
                input
              
              
                (
              
              
                "請輸入你的年齡:"
              
              
                )
              
              
age 
              
                =
              
              
                int
              
              
                (
              
              age
              
                )
              
              
                if
              
               age 
              
                >=
              
              
                18
              
              
                :
              
              
                print
              
              
                (
              
              name 
              
                +
              
              
                ",你已達到法定投票年齡!"
              
              
                )
              
              
                else
              
              
                :
              
              
                print
              
              
                (
              
              name 
              
                +
              
              
                ",很遺憾,你暫時無法參與投票!"
              
              
                )
              
            
          

首先定義了兩個變量 name age 來接收用戶輸入的姓名和年齡。需要注意的是,這兩個變量此時都是str類型。

然后需要把用戶輸入的年齡與法定投票年齡(18)進行比較,所以要求用戶輸入的年齡得是整數(shù)類型,所以使用了函數(shù) int() 。關于函數(shù)的概念之后文章會講到,如果你沒有相關概念,就將其理解成一個黑箱,不必深究,只需要知道函數(shù) int() 經(jīng)過某些處理,可以把str類型轉(zhuǎn)化成int類型就行了。

最后與18進行比較,大于等于18的可以投票,否則無法投票。

大于等于18歲的運行結(jié)果:

小于18歲的運行結(jié)果:
圖2-3

3.判斷奇偶數(shù)

寫這個呢,一方面是想鞏固練習一下 input() 函數(shù),另一方面是想講講前面幾篇文章里沒有提到卻相當重要的一個運算符– % 求模運算符。

小伙伴們可能對加( + )、減( - )、乘( * )、除( / )、乘方( ** )很熟悉。遺忘的同學可以點擊看我這篇文章。

求模運算符就是計算兩個數(shù)相除的余數(shù)

[外鏈圖片轉(zhuǎn)存失敗(img-Uv0jF8vp-1566311751588)(https://liuwynn.github.io/images/20190818/圖3-1.png)]

用求模運算符來計算圖示算式:

            
              
                23
              
              
                %
              
              
                5
              
            
          

計算結(jié)果肯定是3。

言歸正傳,怎么判斷某個數(shù)是奇數(shù)還是偶數(shù)呢?

我們知道,能被2整除的數(shù)是偶數(shù),不能被2整除的數(shù)是奇數(shù)。整除的意思說白了就是余數(shù)為0,這恰好是求模運算符%擅長的領域。

假設存在某個整數(shù)X,如果:

            
              X 
              
                %
              
              
                2
              
              
                ==
              
              
                0
              
              
                # X和2求模余數(shù)是0
              
            
          

則說明X是偶數(shù),否則X一定是奇數(shù)。

基本思路理解之后,動手編程咯:

            
              number 
              
                =
              
              
                input
              
              
                (
              
              
                "請輸入一個整數(shù),程序?qū)⒆詣优袛嗥媾迹?
              
              
                )
              
              
number 
              
                =
              
              
                int
              
              
                (
              
              number
              
                )
              
              
                if
              
               number 
              
                %
              
              
                2
              
              
                ==
              
              
                0
              
              
                :
              
              
                print
              
              
                (
              
              
                "\n數(shù)字"
              
              
                +
              
              
                str
              
              
                (
              
              number
              
                )
              
              
                +
              
              
                " 是偶數(shù)"
              
              
                )
              
              
                else
              
              
                :
              
              
                print
              
              
                (
              
              
                "\n數(shù)字"
              
              
                +
              
              
                str
              
              
                (
              
              number
              
                )
              
              
                +
              
              
                " 是奇數(shù)"
              
              
                )
              
            
          

首先定義變量 number 去接收用戶輸入的整數(shù),心里要知道 number 接收到的是str類型,它無法直接和2執(zhí)行求模運算。

然后將str類型變量 number 轉(zhuǎn)化成int類型,這時 number 就可以和2執(zhí)行求模運算了。

最后判斷求模結(jié)果,即 number 與2相除的余數(shù)是不是0,等于0的話就是偶數(shù),否則就是奇數(shù)。

運行結(jié)果:

圖3-2

求模運算符在編程中使用的還是蠻多的,和加減乘除等運算一樣重要,如果你之前沒有使用過的話,請務必牢記。

4.結(jié)語

本文重點講述了 input() 函數(shù)的基本用法,順便說明了str類型怎么轉(zhuǎn)成int類型以及求模運算符的使用。

如果這篇文章對你有所幫助,歡迎點贊、轉(zhuǎn)發(fā)加收藏啦~

或者你有任何疑問,可以掃碼關注下方公眾號,隨時與我聯(lián)系,關于Python相關的文章也會首發(fā)在此公眾平臺。

最后,感謝你的閱讀,我們下期再見。

Python如何獲取用戶輸入?_第2張圖片


更多文章、技術交流、商務合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發(fā)表我的評論
最新評論 總共0條評論