現在來探討一下Python2中的input()、raw_input()函數和Pyhont3中的input()函數:
Python2中的raw_input()函數,我們知道input()、raw_input()都是讓用戶輸入的函數:
input()函數:
首先,我們先輸入數字:
>>> a = input("Please input your favorite number: ") Please input your favorite number: 5>>> a5
從中可以看出,當我們輸入數字的時候,input()函數直接接受了5,并把這個用戶輸入的數字賦給了a,是以數字形式的。
接下來,我們以字符形式輸入:
>>> a = input("Please input your name: ") Please input your name: virgin Traceback (most recent call last): File "<stdin>", line 1, in <module> File "<string>", line 1, in <module>NameError: name 'virgin' is not defined
從結果可以看出,提示我們輸入的名字沒有定義,報錯了,說明不能以字符形式直接沒有引號的情況下進行輸入;
我們驗證當我們以引號的方式輸入字符串的時候,這個時候沒有提示我們錯誤,由此可以看出,是沒有問題的
>>> a = input("Please input your name: ") Please input your name: "Virgin">>> a'Virgin'
從中可以看出,其實Python2.x中,input()函數讓我們明確我們輸入的是數字格式還是字符格式,就是我們自己要知道我們想要的是什么,數字格式直接輸入,字符格式必須加上單引號或者雙引號,以確定我們輸入的是字符串。
raw_input()函數:>>> 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'
第一次我們輸入的是字符串,而且沒有加引號,正常把Virgin賦給了變量a;第二次輸入的是數字10,但是輸出的時候,a是字符格式的'10',這個時候系統將我們輸入的數字默認為了文本,所以可以看出,raw_input()函數無論用戶輸入什么,都默認為字符格式;而input()函數在Python2.x中,是要用戶確定自己輸入的是什么,用戶要自己清楚明白自己操控的是什么。
Python3中的input()函數:
我們知道,在Python3中是沒有raw_input()函數的,只有input()函數,因為Python3是就行了優化整合:
input()函數
>>> 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'
第一次我們輸入的是數字,此時,input()是將數字10當作文本賦給了變量a,第二次,我們把文本賦給了變量b,輸出結果還是文本,這與Python2中的raw_input()是一樣的,所以,在Python3中是將Python2中的input()刪除了,把raw_input()的名稱改成了input()函數,這樣在我們使用數字的時候就需要自己來進行轉換了,所以我們在讓用戶輸入數字的時候切記進行轉換,如果我們要使用數字的。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。