我在Python的IDLE上测试了一些代码,这已经有一段时间没有用了,偶然发现了一个异常错误。
我正在尝试运行以下简单代码:
for i in range(10):
print(i)
print('Done')
我记得外壳是逐行工作的,所以这是我首先要做的:
>>> for i in range(10):
print(i)
print('Done')
这导致缩进错误,如下图所示:
我尝试了另一种方法,因为下一条语句可能需要在开始时才是这样,
>>> for i in range(10):
print(i)
print('Done')
但是奇怪的是,这给了语法错误:
这对我来说IDLE的工作方式很奇怪。
注意: 我实际上正在测试一个更复杂的程序,并且不想为简短测试创建一个小的Python文件。毕竟,IDLE的外壳不是用于短期测试吗?
为什么多行编码导致此问题?谢谢。
答案 0 :(得分:2)
只需在return
之后点击print(i)
一次或两次,直到再次收到>>>
提示。然后,您可以键入print('Done')
。发生的事情是python正在等待您告诉您您已经在for
中完成工作。然后您可以点击return
。
(不过,您会发现for
循环是立即执行的。)