Python中的Input()函数不起作用

Python中的Input()函数不起作用,python,input,Python,Input,我是Python新手,我正在尝试用Python(使用Atom编辑器)编译一段非常简单的代码,在运行此代码之后: name = input("Name:") print(f"hello, {name}") 输入任何名称后(在本例中,我只需输入n),就会收到以下错误消息: Name:n Traceback (most recent call last): File "hello_name.py", line 1, in <mo

我是Python新手,我正在尝试用Python(使用Atom编辑器)编译一段非常简单的代码,在运行此代码之后:

name = input("Name:")
print(f"hello, {name}")
输入任何名称后(在本例中,我只需输入
n
),就会收到以下错误消息:

Name:n

Traceback (most recent call last):
  File "hello_name.py", line 1, in <module>
    name = input("Name:")
  File "<string>", line 1, in <module>
NameError: name 'n' is not defined
名称:n
回溯(最近一次呼叫最后一次):
文件“hello_name.py”,第1行,在
名称=输入(“名称:”)
文件“”,第1行,在
NameError:未定义名称“n”

我希望您能提供帮助!谢谢!

您需要使用
raw\u input
而不是input,因为
input
对输入运行
eval
。(只有在python 2中,在python 3中input具有与raw\u input相同的行为,并且raw\u input被删除)

这意味着,在获得您的输入后,python将对您的输入进行评估,就像它是代码一样。
尝试在输入中输入
“3+2*5-2”
,然后查看输出

(请注意,编写类似于“x=5”的内容是行不通的,因为
eval
只对表达式求值,比如y+3(假设定义了
y
),它实际上并不运行代码)


(但事实上,如果您只是在学习python,而您还不习惯python 2,那么您应该使用python 3)

是的,这是正确的,我也遇到了类似的问题,我的代码是

name = input("enter you name: ")
print(name)
所以我输入我的名字Anshu 然后显示这个错误

回溯(最近一次呼叫最后一次): 文件“/home/anshu/Projects/coding/python/dictnory_problem.py”,第6行,在 搜索=输入(“输入关键字:”) 文件“”,第1行,在 NameError:未定义名称“anshu”

然后我更改我使用的代码

name = raw-input("enter your name")
print(name)

我假设这是inPython-2.x?在Python-3.x中,这很好。我不知道…我如何检查它?以及如何在Atom中更新它。如果你能在Python-2.x中提供帮助,我爱你。
input(…)
相当于
eval(原始输入(…)
因此它将输入作为Python表达式进行计算。但无论如何,自2020年1月1日起不再支持Python-2.x。Python-3.x不是Python-2.x的“升级”。这两种语言实际上是两种不同的语言(看起来非常相似)。在Linux系统上,您使用
$python3
运行Python-3.x。嘿!我更新了Atom以运行python3,但仍然有相同的错误…仅供参考,这是一个与Atom相关的问题。我在python3.7上运行了此问题,它运行得非常好。您可以尝试相同的方法但不使用Atom吗?(我怀疑Atom没有切换解释器。)好的!你对其他优秀的Atom编译器还有什么建议吗(我正在学习cs50的课程,所以我有IDE,但我也想有一个类似Atom的基于桌面的编译器)你是说其他的代码编辑器?你可以使用Visual Studio代码。但是它工作了吗?运行相同的代码而不是Atom?很抱歉,它的原始输入只是说与接受的答案相同…添加了拼写错误。你可以这样说,但它工作正常