微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在 SublimeREPL 中接收输入时出现 NameError

如何解决在 SublimeREPL 中接收输入时出现 NameError

我正在使用 SublimeText 在 Python 3 中尝试这些行:

a = input('Geben Sie bitte das Wort "Hallo" ein: ')
if a == "Hallo":
    print('Korrekt!')

现在如果我在 SublimeREPL 中运行它,我会得到

Geben Sie bitte das Wort "Hallo" ein: Hallo
Traceback (most recent call last):
  File "S79.py",line 1,in <module>
    a = input('Geben Sie bitte das Wort "Hallo" ein: ')
  File "<string>",in <module>
NameError: name 'Hallo' is not defined

***Repl Closed***

但是,如果我run it online,它会起作用。

我不太明白。在 SublimeREPL 中,它只在我输入时有效

'Hallo'

代替

Hallo

有什么建议吗?

========== 更新:所以我进一步深入研究了这个问题,我开始认为 SublimeText 使用 Python 3 然而 SublimeREPL 在 Python 2 中运行我的代码。例如,如果我构建它,raw_input 在同一个脚本中产生一个错误但使它工作在 SublimeREPL 中。我发现了 here 存在该问题的进一步证据。这可能吗?我该如何改变?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。