在 Pycharm 中使用 raw_input 时出现 EOFError

EOFError while using raw_input in Pycharm

编辑:另请参阅 -

我正在用 for 循环编写代码并采用 raw_input

for turn in range(4):
    guess_row[0] = int(raw_input("Player 1 Guess Row:"))
    guess_col[0] = int(raw_input("Player 1 Guess Col:"))
    guess_row[1] = int(raw_input("Player 2 Guess Row:"))
    guess_col[1] = int(raw_input("Player 2 Guess Col:"))

但我收到以下错误 - 文件结束。

Traceback (most recent call last):
  File "/Users/bonjugal/Desktop/Pycharm/Battleship_Game.py", line 52, in <module>
    guess_row[0] = int(raw_input("Player 1 Guess Row:"))
EOFError

但是,当我从终端 运行 时,这段代码工作正常。我在某处读到,如果您在 reading/writing 之后不关闭文件,就会发生这种情况。它也可能发生在我身上(但在不同的项目中)。在这种情况下我该怎么办?我也尝试重新启动 IDE (Pycharm)。

此外,这个错误出现的背景到底发生了什么?

找到答案了。这是 Jetbrains Pycharm 特有的问题。显然,在 运行 配置包含 "Show Command Line Afterwards" 的地方使用 PyCharm 时,它可以工作。当此设置关闭时 raw_input 被阻止。

编辑配置 > 配置 > 检查 之后显示命令行。

参考这个。

https://youtrack.jetbrains.com/issue/PY-20551