Warm tip: This article is reproduced from serverfault.com, please click

其他-Python 3:读取行时EOF(Visual Studio代码)

(其他 - Python 3: EOF when reading a line (Visual Studio Code))

发布于 2020-11-28 04:18:44

我使用Visual Studio代码在Python中进行编程,每当我尝试接受用户输入时,Visual Studio Code都会在该特定行向我抛出“读取行时的EOF”。但是,此代码可在命令行和Python IDLE中完美运行。

旁注:Python 3:读取行时EOF(Sublime Text 2生气)可能是一个相关问题,因为我面临的错误似乎非常相似,只有我在VSC中收到此错误,而不是Sublime text 2。

我认为这可能是因为VSC没有有效的方式来接受用户输入,因此欢迎在替代平台上进行任何澄清或提出建议。

细节:

编码语言:Python 3.8

文本编辑器:Visual Studio代码

导致问题的代码:

number = int(input('Enter a number:    '))
print (number**2)

收到错误:

Exception has occurred: EOFError
EOF when reading a line
  File "<location>", line 1, in <module>
    number = int(input('Enter a number:    '))
Questioner
Codeman
Viewed
11
Jill Cheng 2020-11-30 13:20:24

我转载了你描述的问题:

在此处输入图片说明

原因:使用我们时"console": "internalConsole",,结果将输出到“ DEBUG CONSOLE”,并且VSCode的此端子当前仅用于显示输出。当需要输入代码但未收到输入时,它将抛出“ EOF”(文件末尾),“文件末尾有意外错误”。

解决方案:请更改调试代码的输出模式。(在settings.json文件中)

  1. 对于需要输入的代码,我们可以使用 "console": "integratedTerminal",

    在此处输入图片说明

  2. 或使用 "console": "externalTerminal",

    在此处输入图片说明

参考:VSCode中的控制台