亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

Python如何獲取用戶輸入?

系統(tǒng) 2081 0

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

文 | 天罡君

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

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

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

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

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

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

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

            
              age 
              
                =
              
              
                input
              
              
                (
              
              
                "小盆友,今年多大啦?請?jiān)谙路捷斎肽愕哪挲g:\n"
              
              
                )
              
              
                print
              
              
                (
              
              
                "我今年 "
              
              
                +
              
               age 
              
                +
              
              
                " 歲"
              
              
                )
              
            
          

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

在上面的示例中,我們傳給 input() 函數(shù)的參數(shù)是 小盆友,今年多大啦?請?jiān)谙路捷斎肽愕哪挲g:\n 。程序會(huì)把這個(gè)參數(shù)輸出到控制臺(tái),用戶可以看到這個(gè)參數(shù)(提示)。

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

圖1-1

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

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

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

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

關(guān)于第二點(diǎn),我們來具體看看:

            
              age 
              
                =
              
              
                input
              
              
                (
              
              
                "小盆友,今年多大啦?請?jiān)谙路捷斎肽愕哪挲g:\n"
              
              
                )
              
              
                print
              
              
                (
              
              
                type
              
              
                (
              
              age
              
                )
              
              
                )
              
            
          

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

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

2.投票程序

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

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

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

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

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

            
              age 
              
                =
              
              
                input
              
              
                (
              
              
                "小盆友,今年多大啦?請?jiān)谙路捷斎肽愕哪挲g:\n"
              
              
                )
              
              
                print
              
              
                (
              
              
                type
              
              
                (
              
              age
              
                )
              
              
                )
              
              
                # 把str類型轉(zhuǎn)化成int類型
              
              
n 
              
                =
              
              
                int
              
              
                (
              
              age
              
                )
              
              
                print
              
              
                (
              
              
                type
              
              
                (
              
              n
              
                )
              
              
                )
              
            
          

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

圖2-1

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

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

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

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

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

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

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

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

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

3.判斷奇偶數(shù)

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

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

求模運(yùn)算符就是計(jì)算兩個(gè)數(shù)相除的余數(shù)

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

用求模運(yùn)算符來計(jì)算圖示算式:

            
              
                23
              
              
                %
              
              
                5
              
            
          

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

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

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

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

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

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

基本思路理解之后,動(dòng)手編程咯:

            
              number 
              
                =
              
              
                input
              
              
                (
              
              
                "請輸入一個(gè)整數(shù),程序?qū)⒆詣?dòng)判斷奇偶:"
              
              
                )
              
              
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í)行求模運(yùn)算。

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

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

運(yùn)行結(jié)果:

圖3-2

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

4.結(jié)語

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

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

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

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

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


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

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

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

【本文對您有幫助就好】

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

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論
主站蜘蛛池模板: 免费一级a毛片免费观看欧美大片 | 中文字幕在亚洲第一在线 | 国产精品公开免费视频 | 精品久久久久久久一区二区伦理 | 国产午夜亚洲精品久久www | se在线播放 | 久久综合一区二区三区 | 久久精品国产久精国产 | 五月色婷婷综合激情免费视频 | 欧美色射 | 91精品国产91久久久久 | 国产精品第1页在线播放 | 国产精品久久久亚洲第一牛牛 | 91天堂97年嫩模在线观看 | 国产午夜永久福利视频在线观看 | 亚洲欧美在线一区 | 精品国产线拍大陆久久尤物 | 亚洲日本人成网站在线观看 | 色综合网站在线 | 亚洲国产一区二区三区a毛片 | 成人免费毛片视频 | 午夜精品久久久久久久第一页 | 中文字幕一区二区区免 | 国产日韩精品一区在线不卡 | 中文字幕专区高清在线观看 | 日本特黄a级高清免费大片18 | 久久这里只有精品久久 | 午夜男人影院 | 狠狠色成人综合首页 | 热e国产| 一区二区三区在线免费视频 | 成人高清视频在线观看大全 | 奇米影视4色| 一区二区亚洲精品 | 毛片大片免费看 | 毛片网页| 亚洲狠狠色丁香婷婷综合 | 亚洲伊人久久综合影院2021 | 欧美精品观看 | 久久久综合九色合综 | 欧美精品色视频 |