Python2.7中input和raw_input函式有什麼區別
阿新 • • 發佈:2019-02-19
1、input函式:
input函式會假設要求使用者輸入的是合法的Python表示式,什麼是合法的Python表示式呢?像37、3*4、‘name’都是合法的,分別代表整數37、數學表示式3乘4、字串name,而像x=3、name是不合法的。
比如要求輸入人的年齡的時候,就可以用input函式;但是要求一個人輸入名字的時候要加上雙引號,顯然是不合理的。
2、raw_input函式:
raw_input函式把所有輸入都當做原始資料,放入到字串中,可以輸入任何字元(當然包括上面所說的x=3、name)。
顯然要求一個人輸入名字時,用raw_input函式更合理;但是當要求是輸入人的年齡時,使用raw_input函式需要做額外的字串轉整數操作。
建議:對input無特殊要求時,建議儘量使用raw_input函式。
附:
Python測試程式碼
raw_input1 = raw_input("num1:") print type(raw_input1) //輸入22,輸出<type 'str'> input1 = input('num2:') print type(input1) //輸入22,輸出<type 'int'> raw_input2 = raw_input("str2:") print raw_input2 //輸入name,輸出name input2 = input('str2:') print type(input2) //輸入name,執行報錯:NameError: name 'name' is not defined |