Python3中最后一个未缩进print函数报SyntaxError,求问题原因
问题分析与解决
你的这段代码本身语法完全正确,直接保存成.py文件运行会正常输出:
Bigger All done
之所以在交互模式(<stdin>)里报错,是因为Python交互环境需要你明确结束缩进的代码块:
- 当你输入完
else:下的print('Smaller')后,需要多按一次回车键,让Python知道缩进块已经结束,之后再输入print('All done')就不会报错了。
交互模式下的正确输入流程应该是这样:
>>> x = 4 >>> if x > 2: ... print('Bigger') ... else: ... print('Smaller') ... # 这里按一次回车,结束缩进块 >>> print('All done') Bigger All done
简单说,不是课程示例的问题,也不是代码写错了,是交互模式下的输入规则导致的——缩进块结束时需要额外的空行来告诉Python“这个代码块写完了”。
内容的提问来源于stack exchange,提问作者Carlos Martinez
相关产品推荐
相关产品推荐

