python2.x中raw_input()和python3.x中input()的區別
阿新 • • 發佈:2019-02-02
搬磚的時候突然發現執行raw_input()函式一直報錯
Traceback (most recent call last):
File "C:\Users\Desktop\python\name.py", line 1, in <module>
name=raw_input("what's your name?"+"\n")
NameError: name 'raw_input' is not defined
不知為何(我的Python版本是3.6.3),後來查看了文件才知道原來Python2.X版本中存在raw_input()和input()兩個函式,但是Python3.X版本中認為raw_input()是冗餘函式就將其作為垃圾扔掉了,因此在執行Python3.X版本時需要將所有的raw_input()替換為input()才能執行。
值得注意的是在Python3.X版本中,input()函式接收所有輸入,並預設將所有的輸入都看作字串來處理,返回字串型別。
以下是修改之後的程式碼:
name=input("what's your name?"+"\n")
print("hello "+name)
== RESTART: C:\Users\Desktop\python\name.py ==
what's your name?
helloworld
hello helloworld