現(xiàn)在來探討一下Python2中的input()、raw_input()函數(shù)和Pyhont3中的input()函數(shù):
創(chuàng)新互聯(lián)制作網(wǎng)站網(wǎng)頁找三站合一網(wǎng)站制作公司,專注于網(wǎng)頁設(shè)計(jì),成都網(wǎng)站制作、做網(wǎng)站,網(wǎng)站設(shè)計(jì),企業(yè)網(wǎng)站搭建,網(wǎng)站開發(fā),建網(wǎng)站業(yè)務(wù),680元做網(wǎng)站,已為超過千家服務(wù),創(chuàng)新互聯(lián)網(wǎng)站建設(shè)將一如既往的為我們的客戶提供最優(yōu)質(zhì)的網(wǎng)站建設(shè)、網(wǎng)絡(luò)營銷推廣服務(wù)!
Python2中的raw_input()函數(shù),我們知道input()、raw_input()都是讓用戶輸入的函數(shù):
input()函數(shù):
首先,我們先輸入數(shù)字:
>>> a = input("Please input your favorite number: ") Please input your favorite number: 5>>> a5
從中可以看出,當(dāng)我們輸入數(shù)字的時(shí)候,input()函數(shù)直接接受了5,并把這個(gè)用戶輸入的數(shù)字賦給了a,是以數(shù)字形式的。
接下來,我們以字符形式輸入:
>>> a = input("Please input your name: ") Please input your name: virgin Traceback (most recent call last): File "", line 1, in File " ", line 1, in NameError: name 'virgin' is not defined
從結(jié)果可以看出,提示我們輸入的名字沒有定義,報(bào)錯(cuò)了,說明不能以字符形式直接沒有引號(hào)的情況下進(jìn)行輸入;
我們驗(yàn)證當(dāng)我們以引號(hào)的方式輸入字符串的時(shí)候,這個(gè)時(shí)候沒有提示我們錯(cuò)誤,由此可以看出,是沒有問題的
>>> a = input("Please input your name: ") Please input your name: "Virgin">>> a'Virgin'
從中可以看出,其實(shí)Python2.x中,input()函數(shù)讓我們明確我們輸入的是數(shù)字格式還是字符格式,就是我們自己要知道我們想要的是什么,數(shù)字格式直接輸入,字符格式必須加上單引號(hào)或者雙引號(hào),以確定我們輸入的是字符串。
raw_input()函數(shù):>>> a = raw_input("Please input your name: ") Please input your name: Virgin>>> a'Virgin'>>> a = raw_input("Please input your favorite number: ") Please input your favorite number: 10>>> a'10'
第一次我們輸入的是字符串,而且沒有加引號(hào),正常把Virgin賦給了變量a;第二次輸入的是數(shù)字10,但是輸出的時(shí)候,a是字符格式的'10',這個(gè)時(shí)候系統(tǒng)將我們輸入的數(shù)字默認(rèn)為了文本,所以可以看出,raw_input()函數(shù)無論用戶輸入什么,都默認(rèn)為字符格式;而input()函數(shù)在Python2.x中,是要用戶確定自己輸入的是什么,用戶要自己清楚明白自己操控的是什么。
Python3中的input()函數(shù):
我們知道,在Python3中是沒有raw_input()函數(shù)的,只有input()函數(shù),因?yàn)镻ython3是就行了優(yōu)化整合:
input()函數(shù)
>>> a = input("Please input your favoriete number: ") Please input your favoriete number: 10>>> a'10'>>> b = input("Please input your name: ") Please input your name: Virgin>>> b'Virgin'
第一次我們輸入的是數(shù)字,此時(shí),input()是將數(shù)字10當(dāng)作文本賦給了變量a,第二次,我們把文本賦給了變量b,輸出結(jié)果還是文本,這與Python2中的raw_input()是一樣的,所以,在Python3中是將Python2中的input()刪除了,把raw_input()的名稱改成了input()函數(shù),這樣在我們使用數(shù)字的時(shí)候就需要自己來進(jìn)行轉(zhuǎn)換了,所以我們?cè)谧層脩糨斎霐?shù)字的時(shí)候切記進(jìn)行轉(zhuǎn)換,如果我們要使用數(shù)字的。