【发布时间】:2018-01-04 20:16:39
【问题描述】:
我有一个关于 Sublimetext3 构建系统的问题。我有以下代码(如下)从用户那里得到响应。我安装了 Python3 并将其用作构建系统。我最初使用函数input(),因为Python3 取代了Python2 的raw_input。这在 Sublime 文本控制台上编译。
start = input("Would you like to play? (Y/N) ")
if(start.lower() == "y"):
print(start)
由于 Sublime text 无法从用户那里获得响应,我使用 Python3 的 REPL 作为构建系统。但是,我无法让上面的代码工作。它一直给我一个
NameError: name 'Y' is not defined
我可以让它通过的唯一方法是使用引号输入用户输入,即"y"。
但是,当我使用 REPL 构建系统将 input 更改为 raw_input 时,它奇迹般地工作了(见下文)。它看起来像是 Python 3 和 Python 2 的混合体,因为打印函数 print() 仍然使用括号。
有人知道如何获取不带引号的输入吗?谁能解释一下为什么下面的代码混合了 Python3 和 Python2?
start = raw_input("Would you like to play? (Y/N) ")
if(start.lower() == "y"):
print(start)
【问题讨论】:
-
很可能只是python2。
print(...)是有效的python2,它只是被解释为print (...)
标签: python python-3.x sublimetext3 raw-input