1
Python编程从入门到实践
1.6.1.1 2.1.1 缩进
2.1.1 缩进

Python语言采用严格的“缩进”来表示程序逻辑,如图2-1所示。其中箭头表示当前for语句与后面语句之间的缩进关系。

图2-1 Python程序的缩进与格式框架

缩进指每行语句开始前的空白区域,用来表示Python程序间的包含和层次关系。一般代码不需要缩进,顶行编写且不留空白。当表示分支、循环、函数、类等程序含义时,在if、while、for、def、class等保留字所在完整语句后通过英文冒号(:)结尾,并在之后行进行缩进,表明后续代码与紧邻无缩进语句的所属关系。需要注意的是,不是所有语句都可以通过缩进包含其他代码,只有上述一些特定保留字所在语句才可以引导缩进,如print()这样的简单语句不表示所属关系,不能使用缩进。

代码编写中,缩进可以用Tab键实现,也可以用多个空格(一般是4个空格)实现,但两者不能混用。建议采用4个空格方式书写代码。Python语言对语句之间的层次关系没有限制,可以嵌套使用多层缩进。

·1个缩进=4个空格。

·缩进是Python语言中表明程序框架的唯一手段。

如果Python程序执行时产生了“unexpected indent”错误,则说明代码中出现了缩进不匹配的问题,需要查看所有缩进是否一样,以及错用缩进的情况。

又如:

最后一行的语句缩进空格数与其他行不一致,会导致代码运行出错。此外,在交互式输入复合语句时,必须在最后添加一行空行来标识结束;当代码太复杂时,解释器将难以判断代码块从何处结束,并且以空行标识结束也便于自己进行查阅和理解。