Python缩进和冒号
对于Python而言代码缩进是一种语法,Python没有像其他语言一样采用{}或者begin...end分隔代码块,
而是采用代码缩进和冒号来区分代码之间的层次。
缩进的空白数量是可变的,但是所有代码块语句必须包含相同的缩进空白数量,这个必须严格执行。
例如:
ifTrue:print("Hello girl!") #缩进一个tab的占位
else: #与if对齐
print("Hello boy!") #缩进一个tab的占位
Python对代码的缩进要求非常严格,如果不采用合理的代码缩进,将抛出SyntaxError异常。
ifTrue:print("Hello girl!")else:print("Hello boy!")print("end")
运行该段代码将会抛出异常。
错误表明,你使用的缩进方式不一致,有的是 tab 键缩进,有的是空格缩进,改为一致即可。
有时候代码采用合理的缩进但是缩进的情况不同,代码的执行结果也不同。
有相同的缩进的代码表示这些代码属于同一代码块。
例如:
#-*- coding: UTF-8 -*-
ifTrue:print("Hello girl!")else:print("Hello boy!")print("end")print("=========华丽的分割线===========")ifTrue:print("Hello girl!")else:print("Hello boy!")print("end")
运行结果:
分割线以上的print("end")未缩进与if对齐,因此它与if属于同一代码块,执行完if的操作,执行输出。
分割线一下的print("end")与print("Hello boy!")保持一致的缩进,则它与print("Hello boy!")属于else之内的代码块。
缩进相同的一组语句构成一个代码块,我们称之代码组。
像if、while、def和class这样的复合语句,首行以关键字