问候程序
我一直在通过《Python绝对初学者指南》这本书学习Python编程。现在我遇到一个问题,就是在使用eclipse-pydev
的时候,它不让我使用if
语句。我写的代码是……
name = input("What is your name? ")
print(name)
print("Hello" name )
结果是
What is your name? caleb
Traceback (most recent call last):
File "/Users/calebmatthias/Document/workspace/de.vogella.python.first/simpprogram.py", line 6, in <module>
name = input("What is your name? ")
File "/Users/calebmatthias/Desktop/eclipse 2/plugins/org.python.pydev_2.2.3.2011100616/PySrc/pydev_sitecustomize/sitecustomize.py", line 210, in input
return eval(raw_input(prompt))
File "<string>", line 1, in <module>
NameError: name 'caleb' is not defined
当我写if
语句时,我输入了
name = input("What is your name? ")
if name == ("Caleb"):
print(" Hello Bud!")
结果是
What is your name? Caleb
Traceback (most recent call last):
File "/Users/calebmatthias/Document/workspace/de.vogella.python.first/simpprogram.py", line 6, in <module>
name = input("What is your name? ")
File "/Users/calebmatthias/Desktop/eclipse 2/plugins/org.python.pydev_2.2.3.2011100616/PySrc/pydev_sitecustomize/sitecustomize.py", line 210, in input
return eval(raw_input(prompt))
File "<string>", line 1, in <module>
NameError: name 'Caleb' is not defined
3 个回答
3
>>> help(input)
input([prompt]) -> value
Equivalent to eval(raw_input(prompt)).
使用 raw_input
。
4
原因是你使用了 input
函数,这个函数会期待用户输入一个可以被 Python 解释的字符串。你可以试试把它改成 raw_input
,这样就不会去评估输入的内容,而是直接给你一个原始的字符串。
另外,你可以把打印语句改成这样:print "Hello", name
。你在第一个例子中漏掉了一个逗号。