我一直在eclipse上使用python,当我提问时我遇到了麻烦,而且回复包括字母(数字答案工作)。例如,如果我问
x=input("what is your name")
print(x)
这会给我一个类似于底部的错误消息。以下是我尝试使用与上述代码相同的错误。
x=input("enter a number")
y=input("enter a second number")
z=input("add, divide, or multiply?")
if(z == "add"):
print(x+y)
if(z == "divide"):
print(x/y)
if(z == "multiply"):
print(x*y)
else:
print("error")
下面是我得到的部分,我必须选择"添加,分割或乘以"
Traceback (most recent call last):
File "/Users/jacobmaldonado/Desktop/untitled folder/abc/src/def.py", line 10, in <module>
z=input("add, divide, or multiply?")
File "/Users/jacobmaldonado/Downloads/Eclipse.app/Contents/Eclipse/plugins/org.python.pydev_4.2.0.201507041133/pysrc/pydev_sitecustomize/sitecustomize.py", line 141, in input
return eval(raw_input(prompt))
File "<string>", line 1, in <module>
NameError: name 'add' is not defined
答案 0 :(得分:1)
在Python 2.x中,input
尝试评估作为Python表达式输入的字符串,使其等效于
z = eval(raw_input("add, divide, or multiply?"))
您想要使用raw_input
,而只返回键入的字符串。
在Python 3.x中,只有一个函数input
,它实际上是raw_input
重命名的。