之前沒有深刻考慮過raw_input與input函數的區別,因此一直比較困惑,今天測試以後,有了較爲深刻了解,記錄以下 python
>>> user = raw_input("Enter your name:")
Enter your name:scr
>>> user
'scr'
>>> user = raw_input("Enter your name:")
Enter your name:123
>>> user
'123'
>>> user = input("Enter your name,please!")
Enter your name,please!4
>>> user
4
>>> user = input("Enter your name,please!")
Enter your name,please!"scr"
>>> user
'scr'
>>> user = input("Enter your name,please!")
Enter your name,please!scr
Traceback (most recent call last):
File "<pyshell#67>", line 1, in <module>
user = input("Enter your name,please!")
File "<string>", line 1, in <module>
NameError: name 'scr' is not defined
>>> shell
總結:raw_input更符合用戶輸入的習慣,把任何用戶輸入都轉換成字符串存儲,在須要其它類型的數據時,調用相應的函數進行轉換 函數
input用戶輸入什麼就存儲什麼,因此用戶輸入必須符合python語法要求,不然會出錯,例如 測試
>>> user = input("Enter your name,please!")
Enter your name,please!scr
Traceback (most recent call last):
File "<pyshell#67>", line 1, in <module>
user = input("Enter your name,please!")
File "<string>", line 1, in <module>
NameError: name 'scr' is not defined
>>> spa