2016-11-06 101 views
-2
test = input("What's your name") 
print(test) 

当我运行它,它给了我一个错误,如果我输入,例如,williamPython需要带“”的字符串?

File "C:\test.py", line 3, in <module> 
    test = input("What's your name") 
    File "<string>", line 1, in <module> 
NameError: name 'william' is not defined 

唯一可行的是,如果我在解释引号键入它,但是这不是它应该如何工作。什么导致这个问题?

+1

您是否尝试过使用Python 3.x的呢? –

+0

我正在使用python 3 –

+2

你显然不是。您正在使用2.x,因此“输入”评估输入。使用'raw_input' – Li357

回答

0

在Python 2.7版,该input功能会评估它在读取

例:

>>> test = input("What is your name: ") 
What is your name: 3 + 3 
>>> print(test) 
6 
>>> type(test) 
<type 'int'> 

对于Python 2.7,你应该使用raw_input将记录作为一个字符串不管它读取。

例子:

>>> test = raw_input("What is your name: ") 
What is your name: William 
>>> print(test) 
William 
>>> type(test) 
<type 'str'>