编译python时出错

编译python时出错,python,Python,每当我尝试执行此代码时: name = input("What's your name?") print("Hello World", name) 通过在命令行上运行命令python myprogram.py,它给出了以下错误: What's your name?John Traceback (most recent call last): File "HelloWorld.py", line 1, in <module> na

每当我尝试执行此代码时:

name = input("What's your name?")
print("Hello World", name)
通过在命令行上运行命令
python myprogram.py
,它给出了以下错误:

What's your name?John
     Traceback (most recent call last):
         File "HelloWorld.py", line 1, in <module>
             name = input("What's your name?")
         File "<string>", line 1, in <module>
     NameError: name 'John' is not defined
你叫什么名字?约翰 回溯(最近一次呼叫最后一次): 文件“HelloWorld.py”,第1行,在 name=输入(“你叫什么名字?”) 文件“”,第1行,在 NameError:未定义名称“John” 它问我名字,但我一输入并按enter键,它就崩溃了,这个错误是什么意思?
谢谢。

在Python2中,您应该使用
raw\u input
,而不是本例中的
input

假设您在使用Python2时仅输入(John),它会将其解释为变量。您需要输入(“John”),强制它查看字符串,或者在第一行使用name=raw_input()。

错误意味着您使用的是Python 2.x。@Carcigenicate我知道,这就像我看到的一条新记录。这似乎已经得到了回答:@Greg-Yup,它已经被回答了100多次。好的,解决了问题,但是我用dnf检查过(我用的是Fedora25),我有Python3.5.4,所以我应该能够使用
input
,而不是
raw\u input
@BeppeChiari拥有Python3.x并不意味着你在使用Python3.x。你能用
Python--version
检查你的实际版本吗?它说是Python2.7.13,我该如何更改它?我在用软呢帽25@BeppeChiari请自己做研究。