当我放
input('Enter your name please: ')
在控制台中,仅出现一个对话框,不会出现对话框?在我输入单词的地方,就会发生这种情况。 https://imgur.com/lQDIutR
很抱歉,如果这很明显,我正处于学习C ++的过程中,然后又切换到了这个过程,感觉如此与众不同,我很容易迷路。
编辑:我正在使用IDE PyCharm。
答案 0 :(得分:0)
我认为您使用的是python 2.7,这就是您看到错误的原因。
这是详细信息:
Python 2.7.12 (default, Dec 4 2017, 14:50:18)
[GCC 5.4.0 20160609] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> input('Enter your name please: ')
Enter your name please: hi
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "<string>", line 1, in <module>
NameError: name 'hi' is not defined
但是,如果您确保在输入时引用输入内容,则可以使用。
>>> input('Enter your name please: ')
Enter your name please: "My name is"
'My name is'
>>>
这是同一控制台,现在可以正常工作。这是python2的预期行为。但是,如果您在python3中执行相同操作,则可以正常工作。
Python 3.5.2 (default, Nov 23 2017, 16:37:01)
[GCC 5.4.0 20160609] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> input('Enter your name please: ')
Enter your name please: hi
'hi'
>>>
您不需要引用python3中输入的字符串。因此,您需要在输入响应中引用字符串。
答案 1 :(得分:0)
在Python 2.7中,您需要使用raw_input()
而不是input()
,以便您输入的内容不会被评估为Python表达式。
>>> input('Enter your name please: ')
Enter your name please: hi
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "<string>", line 1, in <module>
NameError: name 'hi' is not defined
>>> raw_input('Enter your name please: ')
Enter your name please: hi
'hi'
>>>