引用
https://docs.python.org/3/tutorial/interpreter.html#interactive-mode
,
输入多行构造时需要连续行。例如,查看以下if语句:
>>>
>>> the_world_is_flat = True
>>> if the_world_is_flat:
... print("Be careful not to fall off!")
...
Be careful not to fall off!
连续行决定块的开始和结束位置。所以如果有一条延长线,就意味着它是块的一部分。在你的情况下,你有一条线
print(2)
,在作为块的一部分处理的连续行中没有缩进。这就是它失败的原因
SyntaxError
.
正如用户2357112指出的,这种行为在
https://docs.python.org/3/tutorial/introduction.html#first-steps-towards-programming
,
循环的主体是缩进的:缩进是python对语句进行分组的方式。在交互式提示下,必须为每一缩进行键入制表符或空格。实际上,您将使用文本编辑器为python准备更复杂的输入;所有优秀的文本编辑器都有自动缩进功能。
当以交互方式输入一个复合语句时,它后面必须跟一个空行以指示完成(因为解析器无法猜测您何时输入了最后一行)。注意,基本块中的每一行必须缩进相同的数量。