为什么在 IDLE 中 try/except/finally 块之后的代码出现 SyntaxError?

Why SyntaxError for code after the try/except/finally block in IDLE?

我是Python的新手,正在学习使用应用程序SoloLearn

在应用内代码游乐场中,我 运行 这些代码没有问题:

但是当我在 IDLE 中 运行 相同的代码时,我得到一个 SyntaxError:

有人知道为什么吗?

这与 IDLE 无关,正如其他人所说,这是交互 Python 的正常行为,它一次执行一条语句。

>>> try:
...   print(10/0)
... except:
...   print(5)
... finally:
...   print(6)
... print(7)
  File "<stdin>", line 7
    print(7)
        ^
SyntaxError: invalid syntax

如果你将相同的代码放在一个文件中,并且 运行 相同的文件处于 'batch' 模式,它应该可以正常工作,无论你是从命令行 运行 文件还是使用 IDLE 或任何其他编辑器或 IDE 将 运行 在文件或编辑器缓冲区中编码。

由于 Code Playground 有一个 运行 按钮,我强烈怀疑它正在向您展示一个编辑器 window,类似于 IDLE 及其 运行 模块 F5 menu/shortcut 选项,而不是交互式 shell.