1. 程式人生 > >python2.x中raw_input()和python3.x中input()的區別

python2.x中raw_input()和python3.x中input()的區別

    搬磚的時候突然發現執行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