在IDLE Shell中出现多行代码的Python异常错误

时间:2019-01-12 00:28:56

标签: python

我在Python的IDLE上测试了一些代码,这已经有一段时间没有用了,偶然发现了一个异常错误。

我正在尝试运行以下简单代码:

for i in range(10):
    print(i)
print('Done')

我记得外壳是逐行工作的,所以这是我首先要做的:

>>> for i in range(10):
        print(i)
    print('Done')

这导致缩进错误,如下图所示:

Indent error from IDLE

我尝试了另一种方法,因为下一条语句可能需要在开始时才是这样,

>>> for i in range(10):
        print(i)
print('Done')

但是奇怪的是,这给了语法错误:

Second error, a syntax error from IDLE

这对我来说IDLE的工作方式很奇怪。

注意: 我实际上正在测试一个更复杂的程序,并且不想为简短测试创建一个小的Python文件。毕竟,IDLE的外壳不是用于短期测试吗?

为什么多行编码导致此问题?谢谢。

1 个答案:

答案 0 :(得分:2)

只需在return之后点击print(i)一次或两次,直到再次收到>>>提示。然后,您可以键入print('Done')。发生的事情是python正在等待您告诉您您已经在for中完成工作。然后您可以点击return

(不过,您会发现for循环是立即执行的。)