淺談python3中input輸入的使用
今天談一下關(guān)于python中input的一些基本用法(寫給新手入門之用,故只談比較實(shí)用的部分)。
首先,我們可以看一下官方文檔給我們的解釋(在python的shell中輸入命令即可):
上面的英文說(shuō)的是什么呢?大家有興趣的可以自己在網(wǎng)上翻譯一下,大致說(shuō)的就是input這個(gè)函數(shù),第一個(gè)參數(shù)是提示語(yǔ),它默認(rèn)是空的。在我們使用input的時(shí)候,會(huì)從標(biāo)準(zhǔn)輸入中讀取一個(gè)string,即字符串(請(qǐng)注意,這里很重要,下面我們會(huì)繼續(xù)說(shuō)),對(duì)于用戶輸入的換行是不會(huì)讀入的,因?yàn)槲覀兌贾纈nput是以換行作為輸入結(jié)束的標(biāo)志的。
下面就以例子的形式來(lái)展示input的“內(nèi)涵”:
(1)從下圖可以看出,input從標(biāo)準(zhǔn)輸入中為我們拿到的值是一個(gè)字符串,那么也就是說(shuō),無(wú)論我們的初衷是得到一個(gè)整數(shù)、小數(shù)或者其他的值,input都會(huì)在我們的輸入的值的左右兩邊加上一個(gè)引號(hào)(“”),也就是說(shuō)對(duì)于我們拿到的東西,我們使用做后期的加工的。
(2)我們來(lái)得到一個(gè)整數(shù),很簡(jiǎn)單,只需要使用強(qiáng)制類型轉(zhuǎn)換就可以了:
(3)剛剛在(1)中說(shuō)到了對(duì)于我們的輸入,無(wú)論我們的初衷是什么,都會(huì)被加上一對(duì)引號(hào),所以你想到了什么呢?那當(dāng)然是把引號(hào)去掉了,這樣的話我們是不是就會(huì)得到原來(lái)的東西了呢?請(qǐng)注意,這里我會(huì)通過(guò)兩個(gè)例子展示(eval請(qǐng)參考另一篇文章點(diǎn)擊打開(kāi)鏈接)。
上面的這個(gè)例子中,我們想得到的是一個(gè)整數(shù),yes,這個(gè)時(shí)候你用eval出去input“添加”的引號(hào)是完全正確的。其實(shí),當(dāng)我們輸入的時(shí)候,eval幫我們?nèi)コ艘?hào)后,就相當(dāng)于執(zhí)行了a=234,顯然這是整數(shù)賦值。而如果沒(méi)有加eval,只是單純的a=input("請(qǐng)輸入:"),顯然,我們得到的是a="234"。
這個(gè)例子,我希望展示eval的本質(zhì)給大家看。這個(gè)錯(cuò)誤說(shuō)的是,“wer”這個(gè)名字沒(méi)有被定義,那么請(qǐng)注意,這個(gè)時(shí)候的“wer”被編譯器理解成了什么呢?對(duì)于“wer”,編譯器會(huì)在自己的系統(tǒng)庫(kù)中尋找它,看是否有“wer”的定義,如果沒(méi)有找到,那么不好意思,系統(tǒng)只能將它理解為你在使用一個(gè)未定義的變量,也就是說(shuō),“wer”被理解成了變量的名字。對(duì)于上面的234為什么不會(huì)報(bào)這樣的錯(cuò)誤呢?那是因?yàn)橄到y(tǒng)在自身的庫(kù)中可以知道234是一個(gè)整數(shù),那么自然就不會(huì)報(bào)錯(cuò)了。下面在給一個(gè)例子,進(jìn)一步加深理解。
看到這個(gè)例子,我想先讓大家回憶一下我們,使用過(guò)的賦值語(yǔ)句:a,b=34,3。對(duì)于這個(gè)語(yǔ)句,大家在類比到上圖中的eval的輸入,在輸入的時(shí)候,我輸入的是“34,3”,那么,在eval會(huì)去除input“強(qiáng)加”的引號(hào)的時(shí)候,是不是等價(jià)于“a,b=34,3”這個(gè)賦值語(yǔ)句!所以,在這里我想通過(guò)這兩個(gè)例子展現(xiàn)一下eval的本質(zhì),那就是"單純"的替我們?nèi)コ鲆?hào),大家可以當(dāng)做eval執(zhí)行后將引號(hào)里面的內(nèi)容原原本本地寫回了代碼的原來(lái)位置,那么這一切是不是就可以看得很明白了。
請(qǐng)參考上面提到的eval的文章,與此處進(jìn)行結(jié)合,進(jìn)行互補(bǔ)。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
設(shè)置python3為默認(rèn)python的方法
我們知道在Windows下多版本共存的配置方法就是改可執(zhí)行文件的名字,配置環(huán)境變量。接下來(lái)通過(guò)本文給大家介紹設(shè)置python3為默認(rèn)python的方法,一起看看吧2018-10-10Python文字截圖識(shí)別OCR工具實(shí)例解析
這篇文章主要介紹了Python文字截圖識(shí)別OCR工具實(shí)例解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-03-03python機(jī)器學(xué)習(xí)高數(shù)篇之泰勒公式
這篇文章主要介紹了python機(jī)器學(xué)習(xí)高數(shù)篇之函數(shù)極限和導(dǎo)數(shù),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-08-08Python 元組拆包示例(Tuple Unpacking)
今天小編就為大家分享一篇Python 元組拆包實(shí)例(Tuple Unpacking),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-12-12python字典通過(guò)值反查鍵的實(shí)現(xiàn)(簡(jiǎn)潔寫法)
這篇文章主要介紹了python字典通過(guò)值反查鍵的實(shí)現(xiàn)(簡(jiǎn)潔寫法),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-09-09Python用requests-html爬取網(wǎng)頁(yè)的實(shí)現(xiàn)
本文主要介紹了Python用requests-html爬取網(wǎng)頁(yè)的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2022-07-07用Python將一個(gè)列表分割成小列表的實(shí)例講解
今天小編就為大家分享一篇用Python將一個(gè)列表分割成小列表的實(shí)例講解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-07-07Python爬蟲(chóng)實(shí)現(xiàn)搭建代理ip池
這篇文章主要介紹了Python爬蟲(chóng)實(shí)現(xiàn)搭建代理ip池,文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下,希望對(duì)你的工作有所幫助2022-06-06python機(jī)器學(xué)習(xí)pytorch?張量基礎(chǔ)教程
這篇文章主要為大家介紹了python機(jī)器學(xué)習(xí)pytorch?張量基礎(chǔ)教程,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-10-10